annotate mc-code.h @ 254:5aaca4f9d96b

*** empty log message ***
author kono
date Wed, 12 May 2004 21:44:45 +0900
parents 1849e0079f08
children c922bade771d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
1 /* function required by mc-codegen.c
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
2 mc-code-*.c have to provied these
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
3 */
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
4
173
3b33c7daae95 *** empty log message ***
kono
parents: 168
diff changeset
5
144
56211702f298 creg/freg continue
kono
parents: 139
diff changeset
6 #define MAX_MAX 50
56211702f298 creg/freg continue
kono
parents: 139
diff changeset
7 #define INPUT_REG 2 /* input register ( can be reused ) */
56211702f298 creg/freg continue
kono
parents: 139
diff changeset
8 #define USING_REG 1 /* unreusable register usage */
56211702f298 creg/freg continue
kono
parents: 139
diff changeset
9
173
3b33c7daae95 *** empty log message ***
kono
parents: 168
diff changeset
10 extern char *l_include_path[];
3b33c7daae95 *** empty log message ***
kono
parents: 168
diff changeset
11
83
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
12 extern int size_of_int;
165
kono
parents: 162
diff changeset
13 extern int size_of_short;
83
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
14 extern int size_of_float;
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
15 extern int size_of_double;
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
16 extern int size_of_longlong;
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
17 extern int endian;
254
5aaca4f9d96b *** empty log message ***
kono
parents: 239
diff changeset
18
83
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
19 extern int MAX_REGISTER;
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
20 extern int MAX_REGISTGER_VAR;
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
21 extern int MAX_FREGISTER;
103
f849af4b5ea9 *** empty log message ***
kono
parents: 102
diff changeset
22
f849af4b5ea9 *** empty log message ***
kono
parents: 102
diff changeset
23 extern int MAX_INPUT_REGISTER_VAR;
f849af4b5ea9 *** empty log message ***
kono
parents: 102
diff changeset
24 extern int MAX_CODE_INPUT_REGISTER_VAR;
f849af4b5ea9 *** empty log message ***
kono
parents: 102
diff changeset
25 extern int MAX_INPUT_DREGISTER_VAR;
138
e6e77af048a1 float/dobule configuration
kono
parents: 137
diff changeset
26 extern int MAX_CODE_INPUT_FREGISTER_VAR;
103
f849af4b5ea9 *** empty log message ***
kono
parents: 102
diff changeset
27 extern int MAX_CODE_INPUT_DREGISTER_VAR;
99
53899975154c *** empty log message ***
kono
parents: 97
diff changeset
28
94
1ad7045741a7 float dbinop fix
kono
parents: 93
diff changeset
29 #define REG_LVAR_OFFSET 2
83
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
30
238
d64e9a6a66bd ia32 long long code written.
kono
parents: 229
diff changeset
31 extern int code_lassop_p;
d64e9a6a66bd ia32 long long code written.
kono
parents: 229
diff changeset
32
102
3cf2f8c120b9 *** empty log message ***
kono
parents: 99
diff changeset
33 extern void code_init();
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
34 extern void gexpr_code_init(void);
105
7e3d59e56a53 save register ( incomplete )
kono
parents: 104
diff changeset
35 extern int get_register_var(NMTBL *n);
138
e6e77af048a1 float/dobule configuration
kono
parents: 137
diff changeset
36 extern int get_dregister_var(NMTBL *n,int d);
195
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
37 extern int get_lregister_var(NMTBL *n);
126
1d1612fe705a *** empty log message ***
kono
parents: 119
diff changeset
38 extern int get_input_register_var(int,NMTBL *,int);
138
e6e77af048a1 float/dobule configuration
kono
parents: 137
diff changeset
39 extern int get_input_dregister_var(int,NMTBL *,int,int);
195
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
40 extern int get_input_lregister_var(int,NMTBL *,int);
107
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
41 extern void emit_push();
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
42 extern int emit_pop(int type);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
43 extern void gexpr_code_init();
95
185d2cc6a3a9 *** empty log message ***
kono
parents: 94
diff changeset
44 extern int code_csvalue();
147
cb7aa0089681 creg/ireg done for powerpc.
kono
parents: 144
diff changeset
45 extern void code_gexpr(int e);
95
185d2cc6a3a9 *** empty log message ***
kono
parents: 94
diff changeset
46 extern void code_cmpdimm(int e, int csreg);
107
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
47 extern void code_gvar(int e1,int reg);
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
48 extern void code_rgvar(int e1,int reg);
165
kono
parents: 162
diff changeset
49 extern void code_crgvar(int e1,int reg,int sign,int sz);
107
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
50 extern void code_lvar(int e2,int reg);
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
51 extern void code_register(int e2,int reg);
94
1ad7045741a7 float dbinop fix
kono
parents: 93
diff changeset
52 extern void code_rlvar(int e2,int reg);
165
kono
parents: 162
diff changeset
53 extern void code_crlvar(int e2,int reg,int sign,int sz);
109
e09f9de6f5d3 *** empty log message ***
kono
parents: 108
diff changeset
54 extern void code_fname(NMTBL *n,int reg);
107
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
55 extern void code_const(int e2,int reg);
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
56 extern void code_neg(int reg);
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
57 extern void code_not(int reg);
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
58 extern void code_lnot(int reg);
168
b1297c82e926 cpostinc removal
kono
parents: 167
diff changeset
59 extern void code_preinc(int e1,int e2,int dir,int sign,int sz,int reg);
b1297c82e926 cpostinc removal
kono
parents: 167
diff changeset
60 extern void code_postinc(int e1,int e2,int dir,int sign,int sz,int reg);
107
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
61 extern void code_return(int reg);
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
62 extern void code_environment(int reg);
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
63 extern void code_bool(int e1,int reg);
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
64 extern char *code_gt(int cond);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
65 extern char *code_ugt(int cond);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
66 extern char *code_ge(int cond);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
67 extern char *code_uge(int cond);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
68 extern char *code_eq(int cond);
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
69 extern void code_cmp_crgvar(int e1,int reg,int sz);
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
70 extern void code_cmp_crlvar(int e1,int reg,int sz);
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
71 extern void code_cmp_rgvar(int e1,int reg);
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
72 extern void code_cmp_rlvar(int e1,int reg);
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
73 extern void code_cmp_register(int e2);
107
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
74 extern void code_string(int e1,int reg);
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
75 extern void emit_copy(int from,int to,int length,int offset,int value,int det);
94
1ad7045741a7 float dbinop fix
kono
parents: 93
diff changeset
76 extern int function(int e1);
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
77 extern void code_frame_pointer(int e3);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
78 extern void code_fix_frame_pointer(int disp_offset);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
79 extern void code_jmp(char *s);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
80 extern void code_indirect_jmp(int e2);
196
5f70abd9453d *** empty log message ***
kono
parents: 195
diff changeset
81
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
82 extern int code_rindirect(int e1, int reg,int offset, int us);
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
83 extern int code_crindirect(int e1, int reg,int offset, int us);
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
84 extern int code_srindirect(int e1, int reg,int offset, int us);
196
5f70abd9453d *** empty log message ***
kono
parents: 195
diff changeset
85 #if FLOAT_CODE
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
86 extern int code_drindirect(int e1, int reg,int offset, int d);
196
5f70abd9453d *** empty log message ***
kono
parents: 195
diff changeset
87 #endif
5f70abd9453d *** empty log message ***
kono
parents: 195
diff changeset
88 #if LONGLONG_CODE
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
89 extern int code_lrindirect(int e1, int reg,int offset, int us);
196
5f70abd9453d *** empty log message ***
kono
parents: 195
diff changeset
90 #endif
5f70abd9453d *** empty log message ***
kono
parents: 195
diff changeset
91
103
f849af4b5ea9 *** empty log message ***
kono
parents: 102
diff changeset
92 extern void code_assign_gvar(int e2,int reg,int byte);
f849af4b5ea9 *** empty log message ***
kono
parents: 102
diff changeset
93 extern void code_assign_lvar(int e2,int reg,int byte);
111
7aa449aff3e6 floating point
kono
parents: 109
diff changeset
94 extern void code_assign_register(int e2,int byte,int reg);
118
07b91b625f84 assignment optimization
kono
parents: 116
diff changeset
95 extern void code_assign(int e2,int byte,int reg);
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
96 extern void code_register_assop(int e2,int reg,int op,int byte);
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
97 extern void code_assop(int op,int reg,int byte,int sign);
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
98 extern void tosop(int op,int reg,int oreg);
66
0b068058dd67 *** empty log message ***
kono
parents: 61
diff changeset
99 extern void code_opening(char *filename);
0b068058dd67 *** empty log message ***
kono
parents: 61
diff changeset
100 extern void code_closing();
89
917947ffeb7c power pc version
kono
parents: 85
diff changeset
101 extern void rexpr(int e1, int l1, char *s,int t);
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
102 extern void jcond(int l, char cond);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
103 extern void jmp(int l);
187
dffcccf8b1cb nested COND
kono
parents: 173
diff changeset
104 extern int code_get_fixed_creg(int reg,int type);
dffcccf8b1cb nested COND
kono
parents: 173
diff changeset
105 extern void code_set_fixed_creg(int reg,int mode,int type);
107
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
106 extern void code_set_return_register(int mode);
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
107 extern void text_mode(void);
66
0b068058dd67 *** empty log message ***
kono
parents: 61
diff changeset
108 extern void global_table(void);
92
e7f8515ba882 *** empty log message ***
kono
parents: 89
diff changeset
109 extern void code_label(int labelno);
e7f8515ba882 *** empty log message ***
kono
parents: 89
diff changeset
110
189
f53d70110377 immediate instructions.
kono
parents: 187
diff changeset
111 extern int code_const_op_p(int op,int v);
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
112 extern void oprtc(int op,int reg,int v);
189
f53d70110377 immediate instructions.
kono
parents: 187
diff changeset
113
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
114
195
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
115 #if FLOAT_CODE
81
f94ca1168520 float first try...
kono
parents: 66
diff changeset
116 /* floating point part */
f94ca1168520 float first try...
kono
parents: 66
diff changeset
117
229
d793c84b3679 *** empty log message ***
kono
parents: 221
diff changeset
118 extern void drexpr(int e1, int e2,int l1, int op,int cond);
81
f94ca1168520 float first try...
kono
parents: 66
diff changeset
119 extern int dpop_register();
f94ca1168520 float first try...
kono
parents: 66
diff changeset
120 extern int emit_dpop(int);
138
e6e77af048a1 float/dobule configuration
kono
parents: 137
diff changeset
121 extern void code_dregister(int e2,int reg,int d);
e6e77af048a1 float/dobule configuration
kono
parents: 137
diff changeset
122 extern void code_cmp_dregister(int,int);
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
123 extern void code_cmp_drgvar(int,int,int);
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
124 extern void code_cmp_drlvar(int,int,int);
103
f849af4b5ea9 *** empty log message ***
kono
parents: 102
diff changeset
125 extern void code_dassign(int,int,int);
f849af4b5ea9 *** empty log message ***
kono
parents: 102
diff changeset
126 extern void code_dassign_gvar(int,int,int);
f849af4b5ea9 *** empty log message ***
kono
parents: 102
diff changeset
127 extern void code_dassign_lvar(int,int,int);
138
e6e77af048a1 float/dobule configuration
kono
parents: 137
diff changeset
128 extern void code_dassign_dregister(int e2,int d,int reg);
e6e77af048a1 float/dobule configuration
kono
parents: 137
diff changeset
129 extern void code_dconst(int,int,int);
e6e77af048a1 float/dobule configuration
kono
parents: 137
diff changeset
130 extern void code_dneg(int,int);
107
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
131 extern void code_drgvar(int,int,int);
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
132 extern void code_drlvar(int,int,int);
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
133 extern void dtosop(int,int,int);
138
e6e77af048a1 float/dobule configuration
kono
parents: 137
diff changeset
134 extern void emit_dpop_free(int,int);
133
7d436c08e949 separate float / double flow
kono
parents: 126
diff changeset
135 extern void emit_dpush(int);
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
136 extern void code_i2d();
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
137 extern void code_d2i();
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
138 extern void code_u2d();
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
139 extern void code_d2u();
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
140 extern void code_d2f();
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
141 extern void code_f2d();
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
142 extern void code_f2i();
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
143 extern void code_f2u();
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
144 extern void code_i2f();
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
145 extern void code_u2f();
133
7d436c08e949 separate float / double flow
kono
parents: 126
diff changeset
146
81
f94ca1168520 float first try...
kono
parents: 66
diff changeset
147
107
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
148 extern void code_dpreinc(int e1,int e2,int d,int reg);
06f72222d6b5 prevent destorying function argument (incomeplete)
kono
parents: 105
diff changeset
149 extern void code_dpostinc(int e1,int e2,int d,int reg);
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
150 extern void code_dassop(int op,int reg,int d);
219
6190d24e178c long long code generation level 4
kono
parents: 218
diff changeset
151 extern void code_register_dassop(int reg,int op,int d);
89
917947ffeb7c power pc version
kono
parents: 85
diff changeset
152
195
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
153 #endif
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
154
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
155 #if LONGLONG_CODE
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
156 /* 64bit int part */
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
157
229
d793c84b3679 *** empty log message ***
kono
parents: 221
diff changeset
158 extern void lrexpr(int e1, int e2,int l1, int op,int cond);
195
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
159 extern int lpop_register();
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
160 extern int emit_lpop();
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
161 extern void code_lregister(int e2,int reg);
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
162 extern void code_cmp_lregister(int);
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
163 extern void code_cmp_lrgvar(int,int);
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
164 extern void code_cmp_lrlvar(int,int);
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
165 extern void code_lassign(int,int);
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
166 extern void code_lassign_gvar(int,int);
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
167 extern void code_lassign_lvar(int,int);
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
168 extern void code_lassign_lregister(int e2,int reg);
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
169 extern void code_lconst(int,int);
212
32f54ab63b35 *** empty log message ***
kono
parents: 205
diff changeset
170 extern void code_lneg(int);
195
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
171 extern void code_lrgvar(int,int);
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
172 extern void code_lrlvar(int,int);
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
173 extern void ltosop(int,int,int);
195
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
174 extern void emit_lpop_free(int);
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
175 extern void emit_lpush();
213
kono
parents: 212
diff changeset
176 extern int code_lconst_op_p(int op,int e);
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
177 extern void loprtc(int op,int reg, int e);
239
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
178 extern void code_i2ll(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
179 extern void code_i2ull(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
180 extern void code_u2ll(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
181 extern void code_u2ull(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
182 extern void code_ll2i(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
183 extern void code_ll2u(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
184 extern void code_ull2i(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
185 extern void code_ull2u(int reg);
195
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
186 #if FLOAT_CODE
239
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
187 extern void code_d2ll(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
188 extern void code_d2ull(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
189 extern void code_f2ll(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
190 extern void code_f2ull(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
191 extern void code_ll2d(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
192 extern void code_ll2f(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
193 extern void code_ull2d(int reg);
1849e0079f08 ia32 long long continue
kono
parents: 238
diff changeset
194 extern void code_ull2f(int reg);
195
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
195 #endif
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
196
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
197
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
198
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
199
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
200 extern void code_lpreinc(int e1,int e2,int reg);
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
201 extern void code_lpostinc(int e1,int e2,int reg);
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
202 extern void code_lassop(int op,int reg);
219
6190d24e178c long long code generation level 4
kono
parents: 218
diff changeset
203 extern void code_register_lassop(int reg,int op);
195
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
204
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
205 #endif
c193120ee2a6 *** empty log message ***
kono
parents: 189
diff changeset
206
137
9fb09db54436 fix powerpc get_fregister_var's regs error.
kono
parents: 133
diff changeset
207 extern void code_arg_register(NMTBL *fnptr);
89
917947ffeb7c power pc version
kono
parents: 85
diff changeset
208
917947ffeb7c power pc version
kono
parents: 85
diff changeset
209 extern int get_register(void);
138
e6e77af048a1 float/dobule configuration
kono
parents: 137
diff changeset
210 extern int get_dregister(int);
205
a50f90d0b63a *** empty log message ***
kono
parents: 196
diff changeset
211 extern int get_lregister(void);
89
917947ffeb7c power pc version
kono
parents: 85
diff changeset
212 extern void free_register(int i) ;
917947ffeb7c power pc version
kono
parents: 85
diff changeset
213 extern int pop_register(void);
917947ffeb7c power pc version
kono
parents: 85
diff changeset
214 extern void emit_pop_free(int xreg);
917947ffeb7c power pc version
kono
parents: 85
diff changeset
215
221
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
216 // extern int use_int(int);
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
217 // extern int use_float(int);
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
218 // extern int use_double(int);
ceae585186d9 *** empty log message ***
kono
parents: 219
diff changeset
219 // extern int use_longlong(int);
138
e6e77af048a1 float/dobule configuration
kono
parents: 137
diff changeset
220
89
917947ffeb7c power pc version
kono
parents: 85
diff changeset
221 /* */