annotate mc-code.h @ 89:917947ffeb7c

power pc version
author kono
date Thu, 06 Mar 2003 23:47:42 +0900
parents 3789aef7331d
children e7f8515ba882
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
83
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
5 extern int size_of_int;
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
6 extern int size_of_float;
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
7 extern int size_of_double;
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
8 extern int size_of_longlong;
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
9 extern int endian;
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
10 extern int MAX_REGISTER;
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
11 extern int MAX_REGISTGER_VAR;
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
12 extern int MAX_FREGISTER;
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
13
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
14 extern char *register_name(int i,int byte);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
15 extern void gexpr_code_init(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
16 extern int register_var(int r);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
17 extern int get_register_var(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
18 extern void use_data_reg(int virt, int move);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
19 extern void emit_push(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
20 extern void emit_push_x(int xreg);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
21 extern int emit_pop(int type);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
22 extern void gexpr_code_init();
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
23 extern void code_gvar(int e1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
24 extern void code_rgvar(int e1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
25 extern void code_crgvar(int e1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
26 extern void code_lvar(int e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
27 extern void code_register(int e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
28 extern void code_rlvar(int e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
29 extern void code_crlvar(int e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
30 extern void code_fname(char *e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
31 extern void code_const(int e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
32 extern void code_neg();
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
33 extern void code_not();
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
34 extern void code_lnot();
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
35 extern void code_preinc(int e1,int e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
36 extern void code_postinc(int e1,int e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
37 extern void code_cpostinc(int e1,int e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
38 extern void code_cpreinc(int e1,int e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
39 extern void code_cpostdec(int e1,int e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
40 extern void code_cpredec(int e1,int e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
41 extern void code_return();
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
42 extern void code_environment();
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
43 extern void code_bool(int e1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
44 extern char *code_gt(int cond);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
45 extern char *code_ugt(int cond);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
46 extern char *code_ge(int cond);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
47 extern char *code_uge(int cond);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
48 extern char *code_eq(int cond);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
49 extern void code_cmp_crgvar(int e1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
50 extern void code_cmp_crlvar(int e1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
51 extern void code_cmp_rgvar(int e1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
52 extern void code_cmp_rlvar(int e1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
53 extern void code_cmp_register(int e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
54 extern void string(int e1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
55 extern void emit_copy(int from,int to,int length,int offset,int value,int det);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
56 extern void function(int e1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
57 extern void code_frame_pointer(int e3);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
58 extern void code_fix_frame_pointer(int disp_offset);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
59 extern void code_jmp(char *s);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
60 extern void code_indirect_jmp(int e2);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
61 extern void rindirect(int e1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
62 extern void code_assign_gvar(int e2,int byte);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
63 extern void code_assign_lvar(int e2,int byte);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
64 extern void code_assign_register(int e2,int byte);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
65 extern void code_assign(int e2,int byte);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
66 extern void code_register_assop(int e2,int op,int byte);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
67 extern void code_assop(int op,int byte);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
68 extern void tosop(int op,int oreg);
66
0b068058dd67 *** empty log message ***
kono
parents: 61
diff changeset
69 extern void code_opening(char *filename);
0b068058dd67 *** empty log message ***
kono
parents: 61
diff changeset
70 extern void code_closing();
89
917947ffeb7c power pc version
kono
parents: 85
diff changeset
71 extern void rexpr(int e1, int l1, char *s,int t);
82
25654dc29ecc First Floating Point coding done.
kono
parents: 81
diff changeset
72 extern void drexpr(int e1, int e2,int l1, int op);
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
73 extern void jcond(int l, char cond);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
74 extern void jmp(int l);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
75 extern void code_set_fixed_creg(int mode);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
76 extern void text_mode(void);
66
0b068058dd67 *** empty log message ***
kono
parents: 61
diff changeset
77 extern void global_table(void);
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
78 extern int lvar(int l);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
79
81
f94ca1168520 float first try...
kono
parents: 66
diff changeset
80 /* floating point part */
f94ca1168520 float first try...
kono
parents: 66
diff changeset
81
f94ca1168520 float first try...
kono
parents: 66
diff changeset
82 extern int dpop_register();
f94ca1168520 float first try...
kono
parents: 66
diff changeset
83 extern int emit_dpop(int);
f94ca1168520 float first try...
kono
parents: 66
diff changeset
84 extern void code_cmp_drgvar(int);
f94ca1168520 float first try...
kono
parents: 66
diff changeset
85 extern void code_cmp_drlvar(int);
f94ca1168520 float first try...
kono
parents: 66
diff changeset
86 extern void code_dassign(int,int);
f94ca1168520 float first try...
kono
parents: 66
diff changeset
87 extern void code_dassign_gvar(int,int);
f94ca1168520 float first try...
kono
parents: 66
diff changeset
88 extern void code_dassign_lvar(int,int);
f94ca1168520 float first try...
kono
parents: 66
diff changeset
89 extern void code_dconst(int);
f94ca1168520 float first try...
kono
parents: 66
diff changeset
90 extern void code_dneg();
82
25654dc29ecc First Floating Point coding done.
kono
parents: 81
diff changeset
91 extern void code_drgvar(int,int);
25654dc29ecc First Floating Point coding done.
kono
parents: 81
diff changeset
92 extern void code_drlvar(int,int);
81
f94ca1168520 float first try...
kono
parents: 66
diff changeset
93 extern void dtosop(int,int);
f94ca1168520 float first try...
kono
parents: 66
diff changeset
94 extern void emit_dpop_free(int);
f94ca1168520 float first try...
kono
parents: 66
diff changeset
95 extern void emit_dpush();
82
25654dc29ecc First Floating Point coding done.
kono
parents: 81
diff changeset
96 extern void code_i2d();
25654dc29ecc First Floating Point coding done.
kono
parents: 81
diff changeset
97 extern void code_d2i();
85
3789aef7331d minor fix
kono
parents: 83
diff changeset
98 extern void code_u2d();
3789aef7331d minor fix
kono
parents: 83
diff changeset
99 extern void code_d2u();
81
f94ca1168520 float first try...
kono
parents: 66
diff changeset
100
83
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
101 extern void code_dpreinc(int e1,int e2,int d);
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
102 extern void code_dpostinc(int e1,int e2,int d);
f3f75911d62c *** empty log message ***
kono
parents: 82
diff changeset
103 extern void code_dassop(int op,int d);
89
917947ffeb7c power pc version
kono
parents: 85
diff changeset
104
917947ffeb7c power pc version
kono
parents: 85
diff changeset
105 extern void code_arg_register(int);
917947ffeb7c power pc version
kono
parents: 85
diff changeset
106
917947ffeb7c power pc version
kono
parents: 85
diff changeset
107 extern int get_register(void);
917947ffeb7c power pc version
kono
parents: 85
diff changeset
108 extern void free_register(int i) ;
917947ffeb7c power pc version
kono
parents: 85
diff changeset
109 extern int virtual(int real);
917947ffeb7c power pc version
kono
parents: 85
diff changeset
110 extern int pop_register(void);
917947ffeb7c power pc version
kono
parents: 85
diff changeset
111 extern void emit_pop_free(int xreg);
917947ffeb7c power pc version
kono
parents: 85
diff changeset
112
917947ffeb7c power pc version
kono
parents: 85
diff changeset
113 /* */