annotate mc-codegen.h @ 61:8ffb8ca3fe34

separation of architecture dependent part.
author kono
date Thu, 20 Feb 2003 03:29:15 +0900
parents
children 0b068058dd67
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
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
2 extern int creg; /* current register */
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
3 extern int dreg; /* temporary register */
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
4 extern int reg_sp; /* REGister Stack-Pointer */
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
5
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
6 extern int rname[];
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
7 extern int regs[]; /* 使われているレジスタを示すフラグ */
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
8 extern int reg_stack[]; /* 実際のレジスタの領域 */
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
9 extern int regv[]; /* 値が入っているかどうか */
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
10 extern int MAX_REGISTER;
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
11
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
12 extern int creg_regvar;
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
13
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
14 /* function provided by mc-codegen.c */
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
15
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
16
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
17 extern void def_label(int cslabel, int dlabel);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
18 extern int backdef(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
19 extern int csvalue();
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
20 extern int free_register_count(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
21 extern int fwdlabel(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
22 extern int get_register(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
23 extern int pop_register(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
24 extern int register_full(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
25 extern int virtual(int real);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
26 extern void use_register_var(int i) ;
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
27 extern void b_expr(int e1, char cond, int l1,int err);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
28 extern void bexpr(int e1, char cond, int l1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
29 extern void emit_init(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
30 extern void emit_pop_free(int xreg);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
31 extern void free_all_register(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
32 extern void free_register(int i);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
33 extern void fwddef(int l);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
34
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
35 extern int csvalue();
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
36 extern void closing(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
37 extern void cmpdimm(int e, int csreg);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
38 extern void code_enter(char *name) ;
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
39 extern void code_enter1(int args);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
40 extern void code_init(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
41 extern void code_leave(char *name) ;
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
42 extern void emit_data(int e, int t, NMTBL *n);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
43 extern void emit_data_closing(NMTBL *n);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
44 extern void emit_init(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
45 extern void enter(char *name);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
46 extern void enter1();
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
47 extern void g_expr(int e1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
48 extern void gen_comment(char *s);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
49 extern void gen_gdecl(char *n, int gpc);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
50 extern void gen_source(char *s);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
51 extern void gexpr(int e1);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
52 extern void gexpr_init(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
53 extern void jcond(int l, char cond);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
54 extern void jmp(int l);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
55 extern void jmp_eq_label(int l);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
56 extern void jmp_label(int l);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
57 extern void leave(int control, char *name);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
58 extern void opening(char *filename);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
59 extern void ret(void);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
60 extern void use_register_var(int);
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
61
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
62
8ffb8ca3fe34 separation of architecture dependent part.
kono
parents:
diff changeset
63 /* end */