⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c1h.c

📁 unix v6 的c compiler 很老了
💻 C
字号:
/* *	C pass 2 header */#define	swsiz	200#define	ossiz	500struct	tnode {	int	op;	int	type;	int	degree;	struct	tnode *tr1, *tr2;};struct	bnode {	int	bop;	struct	tnode *btree;	int	lbl;	int	cond;};struct	tname {	int	nop;	int	ntype;	int	elsize;	char	class;	char	regno;	int	offset;	int	nloc;};/* * for field selections */struct tsel {	int	op;	int	type;	int	degree;	struct	tnode *tr1;	char	flen;	char	bitoffs;};struct	tconst {	int	cop;	int	ctype;	int	cdeg;	int	value;};struct	optab {	char	tabdeg1;	char	tabtyp1;	char	tabdeg2;	char	tabtyp2;	char	*tabstring;};struct	table {	int	tabop;	struct	optab *tabp;};struct	instab {	int	iop;	char	*str1;	char	*str2;};struct	swtab {	int	swlab;	int	swval;};char	maprel[];char	notrel[];int	nreg;int	isn;int	namsiz;int	line;char	ascbuf[518];int	nerror;struct	table	cctab[];struct	table	efftab[];struct	table	regtab[];struct	table	sptab[];struct	table	lsptab[];struct	instab	instab[];struct	instab	branchtab[];int	opdope[];char	*opntab[];int	nstack;int	nfloat;int	*spacep;int	treespace[ossiz];int	eolflg;struct tconst czero, cone, fczero;/*	operators*/#define	EOF	0#define	SEMI	1#define	LBRACE	2#define	RBRACE	3#define	LBRACK	4#define	RBRACK	5#define	LPARN	6#define	RPARN	7#define	COLON	8#define	COMMA	9#define	FSEL	10#define	KEYW	19#define	NAME	20#define	CON	21#define	STRING	22#define	FCON	23#define	SFCON	24#define	AUTOI	27#define	AUTOD	28#define	INCBEF	30#define	DECBEF	31#define	INCAFT	32#define	DECAFT	33#define	EXCLA	34#define	AMPER	35#define	STAR	36#define	NEG	37#define	COMPL	38#define	DOT	39#define	PLUS	40#define	MINUS	41#define	TIMES	42#define	DIVIDE	43#define	MOD	44#define	RSHIFT	45#define	LSHIFT	46#define	AND	47#define	NAND	55#define	OR	48#define	EXOR	49#define	ARROW	50#define	ITOF	51#define	FTOI	52#define	LOGAND	53#define	LOGOR	54#define	FTOL	56#define	LTOF	57#define	ITOL	58#define	LTOI	59#define	EQUAL	60#define	NEQUAL	61#define	LESSEQ	62#define	LESS	63#define	GREATEQ	64#define	GREAT	65#define	LESSEQP	66#define	LESSP	67#define	GREATQP	68#define	GREATP	69#define	ASPLUS	70#define	ASMINUS	71#define	ASTIMES	72#define	ASDIV	73#define	ASMOD	74#define	ASRSH	75#define	ASLSH	76#define	ASSAND	77#define	ASOR	78#define	ASXOR	79#define	ASSIGN	80#define	TAND	81#define	LTIMES	82#define	LDIV	83#define	LMOD	84#define	ASSNAND	85#define	LASTIMES 86#define	LASDIV	87#define	LASMOD	88#define	QUEST	90#define	LLSHIFT	91#define	ASLSHL	92#define	CALL1	98#define	CALL2	99#define	CALL	100#define	MCALL	101#define	JUMP	102#define	CBRANCH	103#define	INIT	104#define	SETREG	105#define	LOAD	106#define	RFORCE	110/* * Intermediate code operators */#define	BRANCH	111#define	LABEL	112#define	NLABEL	113#define	RLABEL	114#define	BDATA	200#define	WDATA	201#define	PROG	202#define	DATA	203#define	BSS	204#define	CSPACE	205#define	SSPACE	206#define	SYMDEF	207#define	SAVE	208#define	RETRN	209#define	EVEN	210#define	PROFIL	212#define	SWIT	213#define	EXPR	214#define	SNAME	215#define	RNAME	216#define	ANAME	217#define	NULL	218/* *	types */#define	INT	0#define	CHAR	1#define	FLOAT	2#define	DOUBLE	3#define	STRUCT	4#define	RSTRUCT	5#define	LONG	6#define	TYLEN	2#define	TYPE	07#define	XTYPE	(03<<3)#define	PTR	010#define	FUNC	020#define	ARRAY	030/*	storage	classes*/#define	KEYWC	1#define	MOS	10#define	AUTO	11#define	EXTERN	12#define	STATIC	13#define	REG	14#define	STRTAG	15#define	ARG	16#define	OFFS	20#define	XOFFS	21#define	SOFFS	22/*	Flag	bits*/#define	BINARY	01#define	LVALUE	02#define	RELAT	04#define	ASSGOP	010#define	LWORD	020#define	RWORD	040#define	COMMUTE	0100#define	RASSOC	0200#define	LEAF	0400#define	CNVRT	01000

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -