view mc-parse.h @ 327:da2e3f2d127d

macro/codegen reorganization
author kono
date Mon, 21 Jun 2004 23:50:34 +0900
parents
children 7ecb023d29b8
line wrap: on
line source

/* for mc-parse.c */

extern int sym,type,mode,stmode;
extern int labelno,gpc,disp;
extern int args,init_vars,heap[HEAPSIZE];
extern int cslabel,control;
extern NMTBL *nptr,*gnptr;
extern NMTBL *fnptr;
extern int gtypedefed;
extern int retlabel,retpending,retcont;
extern int chk;
#if BITFIELD_CODE
extern int bit_field_disp;
#endif
extern int fields;
extern int struct_return;
extern int lastexp;
extern int debug; 

/* used in mc-macro.c */

extern int asmf;
extern int ch;
extern char cheap[CHEAPSIZE]; // should be extendable
extern char *cheapp;
extern int chptrsave; 
extern int chsave; 
extern char linebuf[LBUFSIZE],namebuf[LBUFSIZE],*chptr;
extern int glineno; 
extern int in_comment; 
extern int in_quote; 
extern int lfree; 
extern int lineno; 
extern int lsrc; 
extern char *include_path[MAX_INCLUDE_PATH_COUNT];

/* used in mc-code-* */

extern  NMTBL null_nptr;
extern NMTBL ntable[GSYMS+LSYMS];

/* used in mc-switch */

extern void free_glist3(int e1);
extern int csvalue1;
extern int blabel,dlabel;

/* used in mc-tree.c */

extern int typedefed;

/* global variable end */

extern void free_glist2(int e1);

/* used in mc-codegen.c */

extern NMTBL * anonymous_nptr();;
extern int append4(int p,int a1,int a2,int a3);
extern void display_ntable(NMTBL *n, char *s);
#if FLOAT_CODE
extern int
dlist2(int e1, double d1);
#endif
extern void error(int n);
extern int glist2(int e1,int e2);
extern int glist3(int e1,int e2,int e3);

extern int insert_ascend(int p,int e,int eq());
extern int length(int list);
extern int list2(int e1, int e2);
extern int list3(int e1, int e2, int e3);
extern int list4(int e1, int e2, int e3, int e4);
extern void extern_define(char *s,int d,int type,int use);

#if LONGLONG_CODE
extern int llist2(int e1, long long d1);
#endif
extern int neqname(char *p,char *q);
extern char *new_static_name(char *name,int delimit);
extern int reverse0(int t1);
extern int size(int t);
extern int typespec(void);

/* used in mc-macro.c */

extern int getsym(int sc);
extern int getch(void);
extern int skipspc(void);
extern void copy_current_file_dir(char *name);
extern int expr(int noconv);

extern NMTBL *msearch0(char *name);
extern int alpha(int c);
extern int digit(int c);

/* end */