out: exit if there is no room for more relocations or symbols
[neatcc.git] / arm.h
blob00888de70379e59caab3ac4e9d78541d92c1e81a
1 /* architecture-dependent header for ARM */
2 #define LONGSZ 4 /* word size */
3 #define I_ARCH "__arm__"
5 #define N_REGS 16 /* number of registers */
6 #define N_ARGS 4 /* number of arg registers */
7 #define N_TMPS 10 /* number of tmp registers */
8 #define R_TMPS 0x03ff /* mask of tmp registers */
9 #define R_ARGS 0x000f /* mask of arg registers */
10 #define R_SAVED 0x0ff0 /* mask of callee-saved registers */
12 #define R_CALL R_TMPS /* mask of regs than can hold call dst */
13 #define R_BYTE R_TMPS /* mask of regs that can perform byte-wide instructions */
15 /* special registers */
16 #define REG_FP 11 /* frame pointer register */
17 #define REG_SP 13 /* stack pointer register */
18 #define REG_RET 0 /* returned value register */
19 #define REG_FORK 0 /* result of conditional branches */