Mercurial > hg > CbC > old > device
comparison mc.h @ 34:0756caa79167
macro function recursive and copy method
author | kono |
---|---|
date | Mon, 10 Feb 2003 07:38:09 +0900 |
parents | 8500dbb69dd9 |
children | 412ad2e6c2a2 |
comparison
equal
deleted
inserted
replaced
33:8500dbb69dd9 | 34:0756caa79167 |
---|---|
173 | 173 |
174 #define HEAPSIZE 10000 | 174 #define HEAPSIZE 10000 |
175 /* #define CHEAPSIZE 3000 */ | 175 /* #define CHEAPSIZE 3000 */ |
176 #define CHEAPSIZE 256000 | 176 #define CHEAPSIZE 256000 |
177 #define LBUFSIZE 4096 | 177 #define LBUFSIZE 4096 |
178 #define MACROSIZE 16000 | |
178 | 179 |
179 #define FILES 10 | 180 #define FILES 10 |
180 #define OUTPUT_FILE_NAME "mcout.s" | 181 #define OUTPUT_FILE_NAME "mcout.s" |
181 | 182 |
182 EXTERN int sym,ch,type,mode,stmode,gfree,lfree,mflag,lineno,glineno; | 183 EXTERN int sym,ch,type,mode,stmode,gfree,lfree,mflag,lineno,glineno; |
185 EXTERN int blabel,clabel,dlabel,cslabel,ilabel,control,ac,ac2,lsrc,chk,asmf; | 186 EXTERN int blabel,clabel,dlabel,cslabel,ilabel,control,ac,ac2,lsrc,chk,asmf; |
186 EXTERN int MAX_REGISTER_VAR; | 187 EXTERN int MAX_REGISTER_VAR; |
187 | 188 |
188 EXTERN unsigned hash; | 189 EXTERN unsigned hash; |
189 | 190 |
190 EXTERN int chptrsave; | 191 EXTERN int chsave; |
192 EXTERN char *chptrsave; | |
191 EXTERN char linebuf[LBUFSIZE],namebuf[LBUFSIZE],*chptr; | 193 EXTERN char linebuf[LBUFSIZE],namebuf[LBUFSIZE],*chptr; |
192 EXTERN char *name,*cheapp,**av,/*obuf[320],*/*sptr,escape(void); | 194 EXTERN char *name,*cheapp,**av,/*obuf[320],*/*sptr,escape(void); |
193 EXTERN int arg_offset,stat_no,size_of_int,disp_offset,endian,csvalue,csvalue1; | 195 EXTERN int arg_offset,stat_no,size_of_int,disp_offset,endian,csvalue,csvalue1; |
194 EXTERN int code_arg_offset; | 196 EXTERN int code_arg_offset; |
195 EXTERN int retlabel,retpending,retcont; | 197 EXTERN int retlabel,retpending,retcont; |
208 EXTERN NMTBL *msearch(char *name); | 210 EXTERN NMTBL *msearch(char *name); |
209 EXTERN NMTBL *msearch0(char *name); | 211 EXTERN NMTBL *msearch0(char *name); |
210 | 212 |
211 EXTERN struct {int fd,ln;char *name0;FILE *fcb;} *filep,filestack[FILES]; | 213 EXTERN struct {int fd,ln;char *name0;FILE *fcb;} *filep,filestack[FILES]; |
212 EXTERN char cheap[CHEAPSIZE]; | 214 EXTERN char cheap[CHEAPSIZE]; |
215 EXTERN char *macropp,macro_buf[MACROSIZE]; | |
213 | 216 |
214 #define car(e) (heap[(int)(e)]) | 217 #define car(e) (heap[(int)(e)]) |
215 | 218 |
216 #define cadr(e) (heap[((int)(e))+1]) | 219 #define cadr(e) (heap[((int)(e))+1]) |
217 | 220 |