Subversion Repositories tendra.SVN

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 7u83 1
/*
2
    		 Crown Copyright (c) 1996
3
 
4
    This TenDRA(r) Computer Program is subject to Copyright
5
    owned by the United Kingdom Secretary of State for Defence
6
    acting through the Defence Evaluation and Research Agency
7
    (DERA).  It is made available to Recipients with a
8
    royalty-free licence for its use, reproduction, transfer
9
    to other parties and amendment for any purpose not excluding
10
    product development provided that any such use et cetera
11
    shall be deemed to be acceptance of the following conditions:-
12
 
13
        (1) Its Recipients shall ensure that this Notice is
14
        reproduced upon any copies or amended versions of it;
15
 
16
        (2) Any amended version of it shall be clearly marked to
17
        show both the nature of and the organisation responsible
18
        for the relevant amendment or amendments;
19
 
20
        (3) Its onward transfer from a recipient to another
21
        party shall be deemed to be that party's acceptance of
22
        these conditions;
23
 
24
        (4) DERA gives no warranty or assurance as to its
25
        quality or suitability for any purpose and DERA accepts
26
        no liability whatsoever in relation to any use to which
27
        it may be put.
28
*/
29
/*
30
			    VERSION INFORMATION
31
			    ===================
32
 
33
--------------------------------------------------------------------------
34
$Header: /u/g/release/CVSROOT/Source/src/installers/680x0/common/mach_op.h,v 1.1.1.1 1998/01/17 15:55:49 release Exp $
35
--------------------------------------------------------------------------
36
$Log: mach_op.h,v $
37
 * Revision 1.1.1.1  1998/01/17  15:55:49  release
38
 * First version to be checked into rolling release.
39
 *
40
Revision 1.2  1997/10/29 10:22:23  ma
41
Replaced use_alloca with has_alloca.
42
 
43
Revision 1.1.1.1  1997/10/13 12:42:55  ma
44
First version.
45
 
46
Revision 1.3  1997/09/25 06:45:17  ma
47
All general_proc tests passed
48
 
49
Revision 1.2  1997/06/18 10:09:39  ma
50
Checking in before merging with Input Baseline changes.
51
 
52
Revision 1.1.1.1  1997/03/14 07:50:15  ma
53
Imported from DRA
54
 
55
 * Revision 1.2  1996/09/20  13:51:40  john
56
 * *** empty log message ***
57
 *
58
 * Revision 1.1.1.1  1996/09/20  10:56:55  john
59
 *
60
 * Revision 1.1.1.1  1996/03/26  15:45:15  john
61
 *
62
 * Revision 1.2  94/02/21  16:00:39  16:00:39  ra (Robert Andrews)
63
 * Declare functions with no arguments using ( void ).
64
 * 
65
 * Revision 1.1  93/02/22  17:16:09  17:16:09  ra (Robert Andrews)
66
 * Initial revision
67
 * 
68
--------------------------------------------------------------------------
69
*/
70
 
71
 
72
#ifndef MACH_OP_INCLUDED
73
#define MACH_OP_INCLUDED
74
 
75
extern bool check_op PROTO_S ( ( mach_op *, int ) ) ;
76
extern bool equal_op PROTO_S ( ( mach_op *, mach_op * ) ) ;
77
extern void free_mach_op PROTO_S ( ( mach_op * ) ) ;
78
extern mach_op * new_mach_op PROTO_S ( ( void ) ) ;
79
 
80
extern mach_op * make_bitfield_op PROTO_S ( ( mach_op *, int, int ) ) ;
81
extern mach_op * make_dec_sp PROTO_S ( ( void ) ) ;
82
extern mach_op * make_extern PROTO_S ( ( char *, long ) ) ;
83
extern mach_op * make_extern_data PROTO_S ( ( char *, long ) ) ;
84
extern mach_op * make_extern_ind PROTO_S ( ( char *, long ) ) ;
85
extern mach_op * make_float_data PROTO_S ( ( flt * ) ) ;
86
extern mach_op * make_hex_data PROTO_S ( ( long ) ) ;
87
extern mach_op * make_hex_value PROTO_S ( ( long ) ) ;
88
extern mach_op * make_inc_sp PROTO_S ( ( void ) ) ;
89
extern mach_op * make_ind_rel_ap PROTO_S ( ( long, long ) ) ;
90
extern mach_op * make_index_op PROTO_S ( ( mach_op *, mach_op *, int ) ) ;
91
extern mach_op * make_indirect PROTO_S ( ( int, long ) ) ;
92
extern mach_op * make_int_data PROTO_S ( ( long ) ) ;
93
extern mach_op * make_lab PROTO_S ( ( long, long ) ) ;
94
extern mach_op * make_lab_data PROTO_S ( ( long, long ) ) ;
95
extern mach_op * make_lab_diff PROTO_S ( ( long, long ) ) ;
96
extern mach_op * make_lab_ind PROTO_S ( ( long, long ) ) ;
97
extern mach_op * make_postinc PROTO_S ( ( int ) ) ;
98
extern mach_op * make_reg_index PROTO_S ( ( int, int, long, int ) ) ;
99
extern mach_op * make_reg_pair PROTO_S ( ( int, int ) ) ;
100
extern mach_op * make_register PROTO_S ( ( int ) ) ;
101
extern mach_op * make_rel_ap PROTO_S ( ( long ) ) ;
102
 
103
#ifndef tdf3
104
extern mach_op * make_rel_ap2 PROTO_S ( ( long ) ) ;
105
extern mach_op * make_rel_sp PROTO_S ( ( long ) ) ;
106
extern mach_op * make_ind_rel_ap2 PROTO_S ( ( long, long ) ) ;
107
extern mach_op * make_ind_rel_ap3 PROTO_S ( ( long, long ) ) ;
108
extern mach_op * make_predec PROTO_S ( ( int ) ) ;
109
extern mach_op * make_ldisp PROTO_S ( ( long ) ) ;
110
#endif
111
 
112
extern mach_op * make_special PROTO_S ( ( char * ) ) ;
113
extern mach_op * make_special_data PROTO_S ( ( char * ) ) ;
114
extern mach_op * make_value PROTO_S ( ( long ) ) ;
115
 
116
extern long special_no ;
117
extern char *special_str ;
118
 
119
extern int tmp_reg_prefer ;
120
extern int tmp_reg_status ;
121
extern void avoid_tmp_reg PROTO_S ( ( int ) ) ;
122
extern int next_tmp_reg PROTO_S ( ( void ) ) ;
123
extern int tmp_reg PROTO_S ( ( int, mach_op * ) ) ;
124
 
125
#endif