extract architecture independent gen.c
[neatcc.git] / x86.h
blobfa059c92a1019b107f72502d6c29fb5f34558e6e
1 #define LONGSZ 4 /* word size */
2 #define I_ARCH "__i386__"
4 #define N_REGS 8 /* number of registers */
5 #define N_ARGS 0 /* number of arg registers */
6 #define N_TMPS 6 /* number of tmp registers */
7 #define R_TMPS 0x00cf /* mask of tmp registers */
8 #define R_ARGS 0x0000 /* mask of arg registers */
9 #define R_SAVED 0x00c8 /* mask of callee-saved registers */
11 #define R_CALL 0x0001 /* mask of regs than can hold call dst */
12 #define R_BYTE 0x0007 /* mask of regs that can perform byte-wide instructions */
14 /* special registers */
15 #define REG_FP 5 /* frame pointer register */
16 #define REG_SP 4 /* stack pointer register */
17 #define REG_RET 0 /* returned value register */
18 #define REG_FORK 0 /* result of conditional branches */