1 /* opcode.h - routine numbers and special opcodes for assembler */
5 /* Pseudo-op routine numbers.
6 * Conditionals are first - this is used to test if op is a conditional.
15 #define MIN_NONCOND ALIGNOP
34 #if SIZEOF_OFFSET_T > 2
61 /* Machine-op routine numbers. */
122 ALL
, /* all address modes allowed, like LDA */
123 ALTER
, /* all but immediate, like STA */
124 IMMED
, /* immediate only (ANDCC, ORCC) */
125 INDEXD
, /* indexed (LEA's) */
126 INHER
, /* inherent, like CLC or CLRA */
127 LONG
, /* long branches */
128 SHORT
, /* short branches */
129 SSTAK
, /* S-stack (PSHS, PULS) */
131 USTAK
/* U-stack (PSHU,PULU) */
135 /* Special opcodes. */
137 # define CMP_OPCODE_BASE 0x38
138 # define CMPSB_OPCODE 0xA6
139 # define CMPSW_OPCODE 0xA7
140 # define ESCAPE_OPCODE_BASE 0xD8
141 # define FST_ENCODED 0x12
142 # define FSTP_ENCODED 0x13
143 # define JMP_OPCODE 0xE9
144 # define JMP_SHORT_OPCODE 0xEB
145 # define JSR_OPCODE 0xE8
146 # define MOVSB_OPCODE 0xA4
147 # define MOVSW_OPCODE 0xA5
148 # define PAGE1_OPCODE 0x0F
149 # define POP_OPCODE 0x8F
150 # define PUSH_OPCODE 0xFF
151 # define WAIT_OPCODE 0x9B
155 # define JMP_OPCODE 0x7E
156 # define JSR_OPCODE 0xBD
157 # define PAGE1_OPCODE 0x10
158 # define PAGE2_OPCODE 0x11