1 /* register allocation interface */
2 void r_func(int nargs
, int vargs
); /* reset variables for functions */
3 int r_alloc(int leaf
, int used
); /* register allocation */
5 int r_regmap(int id
); /* the register allocated to a local */
6 int r_lregs(void); /* registers assigned to locals */
7 int r_sargs(void); /* arguments to save on the stack */
9 void r_mk(int sz
); /* create local */
10 void r_rm(int id
); /* remove local */
11 void r_read(int id
); /* read local */
12 void r_write(int id
); /* write to local */
13 void r_addr(int id
); /* using local address */
14 void r_label(int l
); /* create label */
15 void r_jmp(int l
); /* jump to label */