Rev 2 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
/*
Crown Copyright (c) 1997
This TenDRA(r) Computer Program is subject to Copyright
owned by the United Kingdom Secretary of State for Defence
acting through the Defence Evaluation and Research Agency
(DERA). It is made available to Recipients with a
royalty-free licence for its use, reproduction, transfer
to other parties and amendment for any purpose not excluding
product development provided that any such use et cetera
shall be deemed to be acceptance of the following conditions:-
(1) Its Recipients shall ensure that this Notice is
reproduced upon any copies or amended versions of it;
(2) Any amended version of it shall be clearly marked to
show both the nature of and the organisation responsible
for the relevant amendment or amendments;
(3) Its onward transfer from a recipient to another
party shall be deemed to be that party's acceptance of
these conditions;
(4) DERA gives no warranty or assurance as to its
quality or suitability for any purpose and DERA accepts
no liability whatsoever in relation to any use to which
it may be put.
*/
#ifndef TDF_INCLUDED
#define TDF_INCLUDED
/* AUTOMATICALLY GENERATED BY make_tdf VERSION 2.0 FROM TDF 4.1 */
extern void init_constructs PROTO_S ( ( void ) ) ;
extern sortname find_sort PROTO_S ( ( char ) ) ;
extern node *de_access PROTO_S ( ( void ) ) ;
extern node *de_al_tag PROTO_S ( ( void ) ) ;
extern long de_al_tagdef_bits PROTO_S ( ( void ) ) ;
extern node *de_alignment PROTO_S ( ( void ) ) ;
extern node *de_bitfield_variety PROTO_S ( ( void ) ) ;
extern node *de_bool PROTO_S ( ( void ) ) ;
extern node *de_callees PROTO_S ( ( void ) ) ;
extern node *de_error_code PROTO_S ( ( void ) ) ;
extern node *de_error_treatment PROTO_S ( ( void ) ) ;
extern node *de_exp PROTO_S ( ( void ) ) ;
extern long de_external_bits PROTO_S ( ( void ) ) ;
extern node *de_floating_variety PROTO_S ( ( void ) ) ;
extern node *de_label PROTO_S ( ( void ) ) ;
extern node *de_nat PROTO_S ( ( void ) ) ;
extern node *de_ntest PROTO_S ( ( void ) ) ;
extern node *de_procprops PROTO_S ( ( void ) ) ;
extern node *de_rounding_mode PROTO_S ( ( void ) ) ;
extern node *de_shape PROTO_S ( ( void ) ) ;
extern node *de_signed_nat PROTO_S ( ( void ) ) ;
extern long de_sortname_bits PROTO_S ( ( void ) ) ;
extern node *de_string PROTO_S ( ( void ) ) ;
extern node *de_tag PROTO_S ( ( void ) ) ;
extern long de_tagdec_bits PROTO_S ( ( void ) ) ;
extern long de_tagdef_bits PROTO_S ( ( void ) ) ;
extern long de_tokdec_bits PROTO_S ( ( void ) ) ;
extern long de_tokdef_bits PROTO_S ( ( void ) ) ;
extern long de_token_bits PROTO_S ( ( void ) ) ;
extern long de_token_defn_bits PROTO_S ( ( void ) ) ;
extern node *de_transfer_mode PROTO_S ( ( void ) ) ;
extern node *de_variety PROTO_S ( ( void ) ) ;
extern long de_version_bits PROTO_S ( ( void ) ) ;
#ifdef ENC_TYPES_INCLUDED
extern void enc_al_tag_bits PROTO_S ( ( bitstream *, int ) ) ;
extern void enc_al_tagdef_bits PROTO_S ( ( bitstream *, int ) ) ;
extern void enc_external_bits PROTO_S ( ( bitstream *, int ) ) ;
extern void enc_label_bits PROTO_S ( ( bitstream *, int ) ) ;
extern void enc_sortname_bits PROTO_S ( ( bitstream *, int ) ) ;
extern void enc_tag_bits PROTO_S ( ( bitstream *, int ) ) ;
extern void enc_tagdec_bits PROTO_S ( ( bitstream *, int ) ) ;
extern void enc_tagdef_bits PROTO_S ( ( bitstream *, int ) ) ;
extern void enc_tokdec_bits PROTO_S ( ( bitstream *, int ) ) ;
extern void enc_tokdef_bits PROTO_S ( ( bitstream *, int ) ) ;
extern void enc_token_bits PROTO_S ( ( bitstream *, int ) ) ;
extern void enc_token_defn_bits PROTO_S ( ( bitstream *, int ) ) ;
extern void enc_version_bits PROTO_S ( ( bitstream *, int ) ) ;
#endif
extern node *read_access PROTO_S ( ( long ) ) ;
extern node *read_al_tag PROTO_S ( ( long ) ) ;
extern node *read_alignment PROTO_S ( ( long ) ) ;
extern node *read_bitfield_variety PROTO_S ( ( long ) ) ;
extern node *read_bool PROTO_S ( ( long ) ) ;
extern node *read_callees PROTO_S ( ( long ) ) ;
extern node *read_error_code PROTO_S ( ( long ) ) ;
extern node *read_error_treatment PROTO_S ( ( long ) ) ;
extern node *read_exp PROTO_S ( ( long ) ) ;
extern node *read_floating_variety PROTO_S ( ( long ) ) ;
extern node *read_label PROTO_S ( ( long ) ) ;
extern node *read_nat PROTO_S ( ( long ) ) ;
extern node *read_ntest PROTO_S ( ( long ) ) ;
extern node *read_procprops PROTO_S ( ( long ) ) ;
extern node *read_rounding_mode PROTO_S ( ( long ) ) ;
extern node *read_shape PROTO_S ( ( long ) ) ;
extern node *read_signed_nat PROTO_S ( ( long ) ) ;
extern node *read_string PROTO_S ( ( long ) ) ;
extern node *read_tag PROTO_S ( ( long ) ) ;
extern node *read_transfer_mode PROTO_S ( ( long ) ) ;
extern node *read_variety PROTO_S ( ( long ) ) ;
#define VERSION_capsule "TDFC"
#define VERSION_library "TDFL"
#define VERSION_major 4
#define VERSION_minor 1
#define LINK_al_tagdef_props "aldef"
#define LINK_tagdec_props "tagdec"
#define LINK_tagdef_props "tagdef"
#define LINK_tokdec_props "tokdec"
#define LINK_tokdef_props "tokdef"
#define LINK_version_props "versions"
#define LINK_tld_props "tld"
#define LINK_al_tag "alignment"
#define LINK_tag "tag"
#define LINK_token "token"
#define SORT_access 1
#define SORT_al_tag 2
#define SORT_alignment 3
#define SORT_bitfield_variety 4
#define SORT_bool 5
#define SORT_error_treatment 6
#define SORT_exp 7
#define SORT_floating_variety 8
#define SORT_foreign_sort 9
#define SORT_label 10
#define SORT_nat 11
#define SORT_ntest 12
#define SORT_procprops 13
#define SORT_rounding_mode 14
#define SORT_shape 15
#define SORT_signed_nat 16
#define SORT_string 17
#define SORT_tag 18
#define SORT_transfer_mode 19
#define SORT_token 20
#define SORT_variety 21
#define SORT_foreign ENC_foreign_sort
#define SORT_callees 22
#define SORT_error_code 23
#define SORT_sortname 0
#define SORT_unknown 0
#define SORT_repeat ( -1 )
#define SORT_option ( -2 )
#define SORT_completion ( -3 )
#define SORT_small_tdfint ( -4 )
#define SORT_bitstream ( -5 )
#define SORT_bytestream ( -6 )
#define SORT_tdfbool ( -7 )
#define SORT_tdfident ( -8 )
#define SORT_tdfint ( -9 )
#define SORT_tdfstring ( -10 )
#define SORT_max 21
#define SORT_no 24
#define ENC_access_apply_token 1
#define ENC_access_cond 2
#define ENC_add_accesses 3
#define ENC_constant 4
#define ENC_long_jump_access 5
#define ENC_no_other_read 6
#define ENC_no_other_write 7
#define ENC_out_par 8
#define ENC_preserve 9
#define ENC_register 10
#define ENC_standard_access 11
#define ENC_used_as_volatile 12
#define ENC_visible 13
#define ENC_al_tag_apply_token 2
#define ENC_make_al_tag 1
#define ENC_make_al_tagdef 1
#define ENC_alignment_apply_token 1
#define ENC_alignment_cond 2
#define ENC_alignment 3
#define ENC_alloca_alignment 4
#define ENC_callees_alignment 5
#define ENC_callers_alignment 6
#define ENC_code_alignment 7
#define ENC_locals_alignment 8
#define ENC_obtain_al_tag 9
#define ENC_parameter_alignment 10
#define ENC_unite_alignments 11
#define ENC_var_param_alignment 12
#define ENC_bfvar_apply_token 1
#define ENC_bfvar_cond 2
#define ENC_bfvar_bits 3
#define ENC_bool_apply_token 1
#define ENC_bool_cond 2
#define ENC_false 3
#define ENC_true 4
#define ENC_make_callee_list 1
#define ENC_make_dynamic_callees 2
#define ENC_same_callees 3
#define ENC_nil_access 1
#define ENC_overflow 2
#define ENC_stack_overflow 3
#define ENC_errt_apply_token 1
#define ENC_errt_cond 2
#define ENC_continue 3
#define ENC_error_jump 4
#define ENC_trap 5
#define ENC_wrap 6
#define ENC_impossible 7
#define ENC_exp_apply_token 1
#define ENC_exp_cond 2
#define ENC_abs 3
#define ENC_add_to_ptr 4
#define ENC_and 5
#define ENC_apply_proc 6
#define ENC_apply_general_proc 7
#define ENC_assign 8
#define ENC_assign_with_mode 9
#define ENC_bitfield_assign 10
#define ENC_bitfield_assign_with_mode 11
#define ENC_bitfield_contents 12
#define ENC_bitfield_contents_with_mode 13
#define ENC_case 14
#define ENC_change_bitfield_to_int 15
#define ENC_change_floating_variety 16
#define ENC_change_variety 17
#define ENC_change_int_to_bitfield 18
#define ENC_complex_conjugate 19
#define ENC_component 20
#define ENC_concat_nof 21
#define ENC_conditional 22
#define ENC_contents 23
#define ENC_contents_with_mode 24
#define ENC_current_env 25
#define ENC_div0 26
#define ENC_div1 27
#define ENC_div2 28
#define ENC_env_offset 29
#define ENC_env_size 30
#define ENC_fail_installer 31
#define ENC_float_int 32
#define ENC_floating_abs 33
#define ENC_floating_div 34
#define ENC_floating_minus 35
#define ENC_floating_maximum 36
#define ENC_floating_minimum 37
#define ENC_floating_mult 38
#define ENC_floating_negate 39
#define ENC_floating_plus 40
#define ENC_floating_power 41
#define ENC_floating_test 42
#define ENC_goto 43
#define ENC_goto_local_lv 44
#define ENC_identify 45
#define ENC_ignorable 46
#define ENC_imaginary_part 47
#define ENC_initial_value 48
#define ENC_integer_test 49
#define ENC_labelled 50
#define ENC_last_local 51
#define ENC_local_alloc 52
#define ENC_local_alloc_check 53
#define ENC_local_free 54
#define ENC_local_free_all 55
#define ENC_long_jump 56
#define ENC_make_complex 57
#define ENC_make_compound 58
#define ENC_make_floating 59
#define ENC_make_general_proc 60
#define ENC_make_int 61
#define ENC_make_local_lv 62
#define ENC_make_nof 63
#define ENC_make_nof_int 64
#define ENC_make_null_local_lv 65
#define ENC_make_null_proc 66
#define ENC_make_null_ptr 67
#define ENC_make_proc 68
#define ENC_make_stack_limit 116
#define ENC_make_top 69
#define ENC_make_value 70
#define ENC_maximum 71
#define ENC_minimum 72
#define ENC_minus 73
#define ENC_move_some 74
#define ENC_mult 75
#define ENC_n_copies 76
#define ENC_negate 77
#define ENC_not 78
#define ENC_obtain_tag 79
#define ENC_offset_add 80
#define ENC_offset_div 81
#define ENC_offset_div_by_int 82
#define ENC_offset_max 83
#define ENC_offset_mult 84
#define ENC_offset_negate 85
#define ENC_offset_pad 86
#define ENC_offset_subtract 87
#define ENC_offset_test 88
#define ENC_offset_zero 89
#define ENC_or 90
#define ENC_plus 91
#define ENC_pointer_test 92
#define ENC_power 93
#define ENC_proc_test 94
#define ENC_profile 95
#define ENC_real_part 96
#define ENC_rem0 97
#define ENC_rem1 98
#define ENC_rem2 99
#define ENC_repeat 100
#define ENC_return 101
#define ENC_return_to_label 102
#define ENC_round_with_mode 103
#define ENC_rotate_left 104
#define ENC_rotate_right 105
#define ENC_sequence 106
#define ENC_set_stack_limit 107
#define ENC_shape_offset 108
#define ENC_shift_left 109
#define ENC_shift_right 110
#define ENC_subtract_ptrs 111
#define ENC_tail_call 112
#define ENC_untidy_return 113
#define ENC_variable 114
#define ENC_xor 115
#define ENC_string_extern 1
#define ENC_unique_extern 2
#define ENC_chain_extern 3
#define ENC_flvar_apply_token 1
#define ENC_flvar_cond 2
#define ENC_flvar_parms 3
#define ENC_complex_parms 4
#define ENC_float_of_complex 5
#define ENC_complex_of_float 6
#define ENC_label_apply_token 2
#define ENC_make_label 1
#define ENC_nat_apply_token 1
#define ENC_nat_cond 2
#define ENC_computed_nat 3
#define ENC_error_val 4
#define ENC_make_nat 5
#define ENC_ntest_apply_token 1
#define ENC_ntest_cond 2
#define ENC_equal 3
#define ENC_greater_than 4
#define ENC_greater_than_or_equal 5
#define ENC_less_than 6
#define ENC_less_than_or_equal 7
#define ENC_not_equal 8
#define ENC_not_greater_than 9
#define ENC_not_greater_than_or_equal 10
#define ENC_not_less_than 11
#define ENC_not_less_than_or_equal 12
#define ENC_less_than_or_greater_than 13
#define ENC_not_less_than_and_not_great 14
#define ENC_comparable 15
#define ENC_not_comparable 16
#define ENC_procprops_apply_token 1
#define ENC_procprops_cond 2
#define ENC_add_procprops 3
#define ENC_check_stack 4
#define ENC_inline 5
#define ENC_no_long_jump_dest 6
#define ENC_untidy 7
#define ENC_var_callees 8
#define ENC_var_callers 9
#define ENC_rounding_mode_apply_token 1
#define ENC_rounding_mode_cond 2
#define ENC_round_as_state 3
#define ENC_to_nearest 4
#define ENC_toward_larger 5
#define ENC_toward_smaller 6
#define ENC_toward_zero 7
#define ENC_shape_apply_token 1
#define ENC_shape_cond 2
#define ENC_bitfield 3
#define ENC_bottom 4
#define ENC_compound 5
#define ENC_floating 6
#define ENC_integer 7
#define ENC_nof 8
#define ENC_offset 9
#define ENC_pointer 10
#define ENC_proc 11
#define ENC_top 12
#define ENC_shape_none 13
#define ENC_signed_nat_apply_token 1
#define ENC_signed_nat_cond 2
#define ENC_computed_signed_nat 3
#define ENC_make_signed_nat 4
#define ENC_snat_from_nat 5
#define ENC_access 1
#define ENC_al_tag 2
#define ENC_alignment_sort 3
#define ENC_bitfield_variety 4
#define ENC_bool 5
#define ENC_error_treatment 6
#define ENC_exp 7
#define ENC_floating_variety 8
#define ENC_foreign_sort 9
#define ENC_label 10
#define ENC_nat 11
#define ENC_ntest 12
#define ENC_procprops 13
#define ENC_rounding_mode 14
#define ENC_shape 15
#define ENC_signed_nat 16
#define ENC_string 17
#define ENC_tag 18
#define ENC_transfer_mode 19
#define ENC_token 20
#define ENC_variety 21
#define ENC_string_apply_token 1
#define ENC_string_cond 2
#define ENC_concat_string 3
#define ENC_make_string 4
#define ENC_tag_apply_token 2
#define ENC_make_tag 1
#define ENC_make_id_tagdec 1
#define ENC_make_var_tagdec 2
#define ENC_common_tagdec 3
#define ENC_make_id_tagdef 1
#define ENC_make_var_tagdef 2
#define ENC_common_tagdef 3
#define ENC_make_tokdec 1
#define ENC_make_tokdef 1
#define ENC_token_apply_token 1
#define ENC_make_tok 2
#define ENC_use_tokdef 3
#define ENC_token_definition 1
#define ENC_transfer_mode_apply_token 1
#define ENC_transfer_mode_cond 2
#define ENC_add_modes 3
#define ENC_overlap 4
#define ENC_standard_transfer_mode 5
#define ENC_trap_on_nil 6
#define ENC_volatile 7
#define ENC_complete 8
#define ENC_var_apply_token 1
#define ENC_var_cond 2
#define ENC_var_limits 3
#define ENC_var_width 4
#define ENC_make_version 1
#define ENC_user_info 2
#endif