Wolfgang Thallergcc16 merge934c3885 months agoHistory
1892 lines · 134.2 KB · C
RawDownload
/* Opcode table for the H8/300   Copyright (C) 1991-2026 Free Software Foundation, Inc.   Written by Steve Chamberlain <sac@cygnus.com>.      This file is part of GDB, the GNU Debugger and GAS, the GNU Assembler.      This program is free software; you can redistribute it and/or modify   it under the terms of the GNU General Public License as published by   the Free Software Foundation; either version 3 of the License, or   (at your option) any later version.      This program is distributed in the hope that it will be useful,   but WITHOUT ANY WARRANTY; without even the implied warranty of   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the   GNU General Public License for more details.      You should have received a copy of the GNU General Public License   along with this program; if not, write to the Free Software   Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA   02110-1301, USA.  */ /* Instructions are stored as a sequence of nibbles.   If the nibble has value 15 or less than the representation is complete.   Otherwise, we record what it contains with several flags.  */ typedef int op_type; enum h8_flags{  L_2  =	0x10,  L_3  =	0x20,  /* 3 bit constant, zero not accepted.  */  L_3NZ =	0x30,  L_4  =	0x40,  L_5  =	0x50,  L_8  =	0x60,  L_8U =	0x70,  L_16 =	0x80,  L_16U =	0x90,  L_24 =	0xA0,  L_32 =	0xB0,  L_P  =	0xC0,   /* Mask to isolate the L_x size bits.  */  SIZE =	0xF0,   REG =		0x0100,  ABS =		0x0200,  MEMIND =	0x0300,  IMM =		0x0400,  DISP =	0x0500,  IND =		0x0600,  POSTINC =	0x0700,  POSTDEC =	0x0800,  PREINC =	0x0900,  PREDEC =	0x0A00,  PCREL =	0x0B00,  KBIT =	0x0C00,  DBIT =	0x0D00,  CONST_2 =     0x0E00,  CONST_4 =     0x0F00,  CONST_8 =     0x1000,  CONST_16 =    0x1100,  INDEXB =      0x1200,  INDEXW =      0x1300,  INDEXL =      0x1400,  PCIDXB =      0x1500,  PCIDXW =      0x1600,  PCIDXL =      0x1700,  VECIND =      0x1800,  LOWREG =      0x1900,  DATA   =      0x2000,   /* Synonyms.  */  INC =		POSTINC,  DEC =		PREDEC,  /* Control Registers.  */  CCR =		0x4000,  EXR =		0x4100,  MACH = 	0x4200,  MACL = 	0x4300,  RESERV1 = 	0x4400,  RESERV2 = 	0x4500,  VBR = 	0x4600,  SBR = 	0x4700,  MACREG =	0x4800,  CCR_EXR = 	0x4900,  VBR_SBR = 	0x4A00,  CC_EX_VB_SB =	0x4B00,  RESERV3 =	0x4C00,  RESERV4 = 	0x4D00,  RESERV5 = 	0x4E00,  RESERV6 = 	0x4F00,   /* Mask to isolate the addressing mode bits (REG .. PREDEC).  */  MODE =	0x7F00,   CTRL = 	0x4000,   NO_SYMBOLS =  0x8000,  SRC =		0x10000,  DST =		0x20000,  OP3 =		0x40000,  MEMRELAX = 	0x80000,		/* Move insn which may relax.  */   DISPREG =	0x100000,  IGNORE =	0x200000,  ABSJMP =	0x400000,   B00 =         0x800000, 		/* Bit 0 must be low.   */  B01 =         0x1000000, 		/* Bit 0 must be high.  */  B10 = 	0x2000000, 		/* Bit 1 must be low.   */  B11 = 	0x4000000, 		/* Bit 1 must be high.  */  B20 = 	0x8000000, 		/* Bit 2 must be low.   */  B21 = 	0x10000000, 		/* Bit 2 must be high.  */  B30 =		0x20000000, 		/* Bit 3 must be low.   */  B31 =		0x40000000,		/* Bit 3 must be high.  */  E =  		0x80000000,		/* End of nibble sequence.  */   /* Immediates smaller than 8 bits are always unsigned.  */  IMM3 =	IMM | L_3,  IMM4 =	IMM | L_4,  IMM5 =	IMM | L_5,  IMM3NZ =	IMM | L_3NZ,  IMM2 =	IMM | L_2,   IMM8 =	IMM | SRC | L_8,  IMM8U =	IMM | SRC | L_8U,  IMM16 =	IMM | SRC | L_16,  IMM16U =	IMM | SRC | L_16U,  IMM32 =	IMM | SRC | L_32,   IMM3NZ_NS =   IMM3NZ | NO_SYMBOLS,  IMM4_NS =	IMM4 | NO_SYMBOLS,  IMM8U_NS =	IMM8U | NO_SYMBOLS,  IMM16U_NS =   IMM16U | NO_SYMBOLS,   RD8  =	DST | L_8  | REG,  RD16 =	DST | L_16 | REG,  RD32 =	DST | L_32 | REG,  R3_8  =       OP3 | L_8  | REG,  R3_16 =       OP3 | L_16 | REG,  R3_32 =       OP3 | L_32 | REG,  RS8  =	SRC | L_8  | REG,  RS16 =	SRC | L_16 | REG,  RS32 =	SRC | L_32 | REG,   RSP =		SRC | L_P | REG,  RDP =		DST | L_P | REG,   PCREL8 =	PCREL | L_8,  PCREL16 =	PCREL | L_16,   OP3PCREL8 =	OP3 | PCREL | L_8,  OP3PCREL16 =	OP3 | PCREL | L_16,   INDEXB16  =	INDEXB | L_16,  INDEXW16  =	INDEXW | L_16,  INDEXL16  =	INDEXL | L_16,  INDEXB16D =	INDEXB | L_16 | DST,  INDEXW16D =	INDEXW | L_16 | DST,  INDEXL16D =	INDEXL | L_16 | DST,   INDEXB32  =	INDEXB | L_32,  INDEXW32  =	INDEXW | L_32,  INDEXL32  =	INDEXL | L_32,  INDEXB32D =	INDEXB | L_32 | DST,  INDEXW32D =	INDEXW | L_32 | DST,  INDEXL32D =	INDEXL | L_32 | DST,   DISP2SRC =	DISP | L_2  | SRC,  DISP16SRC =	DISP | L_16 | SRC,  DISP32SRC =	DISP | L_32 | SRC,   DISP2DST =	DISP | L_2  | DST,  DISP16DST =	DISP | L_16 | DST,  DISP32DST =	DISP | L_32 | DST,   DSTDISPREG =  DST | DISPREG,  SRCDISPREG =  SRC | DISPREG,   ABS8SRC  = 	SRC | ABS | L_8,  ABS16SRC = 	SRC | ABS | L_16U,  ABS24SRC = 	SRC | ABS | L_24,  ABS32SRC = 	SRC | ABS | L_32,   ABS8DST  =	DST | ABS | L_8,  ABS16DST = 	DST | ABS | L_16U,  ABS24DST = 	DST | ABS | L_24,  ABS32DST = 	DST | ABS | L_32,   ABS8OP3  =	OP3 | ABS | L_8,  ABS16OP3 = 	OP3 | ABS | L_16U,  ABS24OP3 = 	OP3 | ABS | L_24,  ABS32OP3 = 	OP3 | ABS | L_32,   RDDEC =	DST | DEC,  RSINC =	SRC | INC,  RDINC =	DST | INC,   RSPOSTINC =	SRC | POSTINC,  RDPOSTINC =	DST | POSTINC,  RSPREINC =	SRC | PREINC,  RDPREINC =	DST | PREINC,  RSPOSTDEC =	SRC | POSTDEC,  RDPOSTDEC =	DST | POSTDEC,  RSPREDEC =	SRC | PREDEC,  RDPREDEC =	DST | PREDEC,   RSIND =	SRC | IND,  RDIND =	DST | IND,  R3_IND = 	OP3 | IND, #define MS32	(SRC | L_32 | MACREG)#define MD32	(DST | L_32 | MACREG) #if 1  OR8  =	RS8,		/* ??? OR as in One Register.  */  OR16 =	RS16,  OR32 =	RS32,#else  OR8  =	RD8,  OR16 =	RD16,  OR32 =	RD32#endif}; enum ctrlreg{  C_CCR  = 0,   C_EXR  = 1,   C_MACH = 2,   C_MACL = 3,   C_VBR  = 6,   C_SBR  = 7}; enum {MAX_CODE_NIBBLES = 33}; struct code {  op_type nib[MAX_CODE_NIBBLES];}; struct arg {  op_type nib[3];}; /* Availability of instructions on processor models.  */enum h8_model{  AV_H8,  AV_H8H,  AV_H8S,  AV_H8SX}; struct h8_opcode {  int how;  enum h8_model available;  int time;  const char *name;  struct arg args;  struct code data;}; #ifdef DEFINE_TABLE #define DATA2   DATA, DATA#define DATA3   DATA, DATA, DATA#define DATA5   DATA, DATA, DATA, DATA, DATA#define DATA7   DATA, DATA, DATA, DATA, DATA, DATA, DATA #define IMM8LIST	IMM8,   DATA#define IMM16LIST	IMM16,  DATA3#define IMM16ULIST	IMM16U, DATA3#define IMM24LIST	IMM24,  DATA5#define IMM32LIST	IMM32,  DATA7 #define DISP16LIST DISP | L_16, DATA3#define DISP24LIST DISP | L_24, DATA5#define DISP32LIST DISP | L_32, DATA7 #define ABS8LIST   ABS  | L_8,   DATA#define ABS16LIST  ABS  | L_16U, DATA3#define ABS24LIST  ABS  | L_24,  DATA5#define ABS32LIST  ABS  | L_32,  DATA7 #define DSTABS8LIST  DST | ABS | L_8,   DATA#define DSTABS16LIST DST | ABS | L_16U, DATA3#define DSTABS24LIST DST | ABS | L_24,  DATA5#define DSTABS32LIST DST | ABS | L_32,  DATA7 #define OP3ABS8LIST  OP3 | ABS | L_8,  DATA#define OP3ABS16LIST OP3 | ABS | L_16, DATA3#define OP3ABS24LIST OP3 | ABS | L_24, DATA5#define OP3ABS32LIST OP3 | ABS | L_32, DATA7 #define DSTDISP16LIST DST | DISP | L_16, DATA3#define DSTDISP24LIST DST | DISP | L_24, DATA5#define DSTDISP32LIST DST | DISP | L_32, DATA7 #define A16LIST   L_16,  DATA3#define A24LIST   L_24,  DATA5#define A32LIST   L_32,  DATA7 /* Extended Operand Prefixes:  */ #define PREFIX_010	0x0, 0x1, 0x0#define PREFIX_015	0x0, 0x1, 0x5#define PREFIX_017	0x0, 0x1, 0x7 #define PREFIX_0100	0x0, 0x1, 0x0, 0x0#define PREFIX_010_D2	0x0, 0x1, 0x0, B30 | B21 | DISP2SRC#define PREFIX_0101	0x0, 0x1, 0x0, 0x1#define PREFIX_0102	0x0, 0x1, 0x0, 0x2#define PREFIX_0103	0x0, 0x1, 0x0, 0x3#define PREFIX_0104	0x0, 0x1, 0x0, 0x4#define PREFIX_0105	0x0, 0x1, 0x0, 0x5#define PREFIX_0106	0x0, 0x1, 0x0, 0x6#define PREFIX_0107	0x0, 0x1, 0x0, 0x7#define PREFIX_0108	0x0, 0x1, 0x0, 0x8#define PREFIX_0109	0x0, 0x1, 0x0, 0x9#define PREFIX_010A	0x0, 0x1, 0x0, 0xa#define PREFIX_010D	0x0, 0x1, 0x0, 0xd#define PREFIX_010E	0x0, 0x1, 0x0, 0xe #define PREFIX_0150	0x0, 0x1, 0x5, 0x0#define PREFIX_015_D2	0x0, 0x1, 0x5, B30 | B21 | DISP2SRC#define PREFIX_0151	0x0, 0x1, 0x5, 0x1#define PREFIX_0152	0x0, 0x1, 0x5, 0x2#define PREFIX_0153	0x0, 0x1, 0x5, 0x3#define PREFIX_0154	0x0, 0x1, 0x5, 0x4#define PREFIX_0155	0x0, 0x1, 0x5, 0x5#define PREFIX_0156	0x0, 0x1, 0x5, 0x6#define PREFIX_0157	0x0, 0x1, 0x5, 0x7#define PREFIX_0158	0x0, 0x1, 0x5, 0x8#define PREFIX_0159	0x0, 0x1, 0x5, 0x9#define PREFIX_015A	0x0, 0x1, 0x5, 0xa#define PREFIX_015D	0x0, 0x1, 0x5, 0xd#define PREFIX_015E	0x0, 0x1, 0x5, 0xe#define PREFIX_015F	0x0, 0x1, 0x5, 0xf #define PREFIX_0170	0x0, 0x1, 0x7, 0x0#define PREFIX_017_D2S	0x0, 0x1, 0x7, B30 | B21 | DISP2SRC#define PREFIX_017_D2D	0x0, 0x1, 0x7, B30 | B21 | DISP2DST#define PREFIX_0171	0x0, 0x1, 0x7, 0x1#define PREFIX_0172	0x0, 0x1, 0x7, 0x2#define PREFIX_0173	0x0, 0x1, 0x7, 0x3#define PREFIX_0174	0x0, 0x1, 0x7, 0x4#define PREFIX_0175	0x0, 0x1, 0x7, 0x5#define PREFIX_0176	0x0, 0x1, 0x7, 0x6#define PREFIX_0177	0x0, 0x1, 0x7, 0x7#define PREFIX_0178	0x0, 0x1, 0x7, 0x8#define PREFIX_0179	0x0, 0x1, 0x7, 0x9#define PREFIX_017A	0x0, 0x1, 0x7, 0xa#define PREFIX_017D	0x0, 0x1, 0x7, 0xd#define PREFIX_017E	0x0, 0x1, 0x7, 0xe#define PREFIX_017F	0x0, 0x1, 0x7, 0xf #define PREFIX_6A15	0x6, 0xa, 0x1, 0x5#define PREFIX_6A35	0x6, 0xa, 0x3, 0x5#define PREFIX_6B15	0x6, 0xb, 0x1, 0x5#define PREFIX_6B35	0x6, 0xb, 0x3, 0x5 #define PREFIX_78R4	0x7, 0x8, B31 | DISPREG, 0x4#define PREFIX_78R5	0x7, 0x8, B31 | DISPREG, 0x5#define PREFIX_78R6	0x7, 0x8, B31 | DISPREG, 0x6#define PREFIX_78R7	0x7, 0x8, B31 | DISPREG, 0x7 #define PREFIX_78R4W	0x7, 0x8, B30 | DISPREG, 0x4#define PREFIX_78R5W	0x7, 0x8, B30 | DISPREG, 0x5#define PREFIX_78R6W	0x7, 0x8, B30 | DISPREG, 0x6#define PREFIX_78R7W	0x7, 0x8, B30 | DISPREG, 0x7 #define PREFIX_78R4WD	0x7, 0x8, B30 | DSTDISPREG, 0x4#define PREFIX_78R5WD	0x7, 0x8, B30 | DSTDISPREG, 0x5#define PREFIX_78R6WD	0x7, 0x8, B30 | DSTDISPREG, 0x6#define PREFIX_78R7WD	0x7, 0x8, B30 | DSTDISPREG, 0x7 #define PREFIX_7974	0x7, 0x9, 0x7, 0x4#define PREFIX_7A74	0x7, 0xa, 0x7, 0x4#define PREFIX_7A7C	0x7, 0xa, 0x7, 0xc  /* Source standard fragment:  */#define FROM_IND	 0, RSIND#define FROM_POSTINC	 8, RSPOSTINC#define FROM_POSTDEC	10, RSPOSTDEC#define FROM_PREINC	 9, RSPREINC#define FROM_PREDEC	11, RSPREDEC#define FROM_DISP2	B30 | B20 | DISP2SRC, DISPREG #define FROM_DISP16	12, B30 | DISPREG#define FROM_DISP32	12, B31 | DISPREG#define FROM_DISP16B	13, B30 | DISPREG#define FROM_DISP16W	14, B30 | DISPREG#define FROM_DISP16L	15, B30 | DISPREG#define FROM_DISP32B	13, B31 | DISPREG#define FROM_DISP32W	14, B31 | DISPREG#define FROM_DISP32L	15, B31 | DISPREG#define FROM_ABS16	 4, B30 | IGNORE#define FROM_ABS32	 4, B31 | IGNORE /* Destination standard fragment:  */#define TO_IND		 0, RDIND#define TO_IND_MOV	 0, RDIND | B30#define TO_POSTINC	 8, RDPOSTINC#define TO_POSTINC_MOV	 8, RDPOSTINC | B30#define TO_POSTDEC	10, RDPOSTDEC#define TO_POSTDEC_MOV	10, RDPOSTDEC | B30#define TO_PREINC	 9, RDPREINC#define TO_PREINC_MOV	 9, RDPREINC  | B30#define TO_PREDEC	11, RDPREDEC#define TO_PREDEC_MOV	11, RDPREDEC  | B30#define TO_DISP2	B30 | B20 | DISP2DST, DSTDISPREG#define TO_DISP2_MOV	B30 | B20 | DISP2DST, DSTDISPREG | B30#define TO_DISP16	12, B30 | DSTDISPREG#define TO_DISP32	12, B31 | DSTDISPREG#define TO_DISP16B	13, B30 | DSTDISPREG#define TO_DISP16W	14, B30 | DSTDISPREG#define TO_DISP16L	15, B30 | DSTDISPREG#define TO_DISP32B	13, B31 | DSTDISPREG#define TO_DISP32W	14, B31 | DSTDISPREG#define TO_DISP32L	15, B31 | DSTDISPREG#define TO_ABS16	 4, B30 | IGNORE#define TO_ABS32	 4, B31 | IGNORE /* Source fragment for three-word instruction:  */#define TFROM_IND	6,  9, B30 | RSIND, 12#define TFROM_DISP2	6,  9, B30 | DISPREG, 12#define TFROM_ABS16	6, 11, B30 | B20 | B10 | IGNORE, 12, ABS16LIST#define TFROM_ABS32	6, 11, B30 | B20 | B11 | IGNORE, 12, ABS32LIST#define TFROM_POSTINC	6, 13, B30 | RSPOSTINC, 12#define TFROM_PREINC	6, 13, B30 | RSPREINC, 12#define TFROM_POSTDEC	6, 13, B30 | RSPOSTDEC, 12#define TFROM_PREDEC	6, 13, B30 | RSPREDEC, 12#define TFROM_DISP16	6, 15, B30 | DISPREG, 12, DISP16LIST#define TFROM_DISP32	6, 11, 2, 12, DISP32LIST#define TFROM_DISP16B	6, 15, B30 | DISPREG, 12, DISP16LIST#define TFROM_DISP16W	6, 15, B30 | DISPREG, 12, DISP16LIST#define TFROM_DISP16L	6, 15, B30 | DISPREG, 12, DISP16LIST#define TFROM_DISP32B	6, 11, 2, 12, DISP32LIST#define TFROM_DISP32W	6, 11, 2, 12, DISP32LIST#define TFROM_DISP32L	6, 11, 2, 12, DISP32LIST#define TFROM_ABS16W	6, 11, 1, 12, ABS16LIST#define TFROM_ABS32W	6, 11, 3, 12, ABS32LIST /* Source fragment for three-word instruction:  */#define TFROM_IND_B	6,  8, B30 | RSIND, 12#define TFROM_ABS16_B	6, 10, B30 | B20 | B10 | IGNORE, 12, ABS16LIST#define TFROM_ABS32_B	6, 10, B30 | B20 | B11 | IGNORE, 12, ABS32LIST #define TFROM_DISP2_B	6,  8, B30 | DISPREG, 12#define TFROM_POSTINC_B	6, 12, B30 | RSPOSTINC, 12#define TFROM_PREINC_B	6, 12, B30 | RSPREINC, 12#define TFROM_POSTDEC_B	6, 12, B30 | RSPOSTDEC, 12#define TFROM_PREDEC_B	6, 12, B30 | RSPREDEC, 12#define TFROM_DISP16_B	6, 14, B30 | DISPREG, 12, DISP16LIST#define TFROM_DISP32_B	6, 10, 2, 12, DISP32LIST#define TFROM_DISP16B_B	6, 14, B30 | DISPREG, 12, DISP16LIST#define TFROM_DISP16W_B	6, 14, B30 | DISPREG, 12, DISP16LIST#define TFROM_DISP16L_B	6, 14, B30 | DISPREG, 12, DISP16LIST#define TFROM_DISP32B_B	6, 10, 2, 12, DISP32LIST#define TFROM_DISP32W_B	6, 10, 2, 12, DISP32LIST#define TFROM_DISP32L_B	6, 10, 2, 12, DISP32LIST #define TFROM_ABS16W_B	6, 10, 1, 12, ABS16LIST#define TFROM_ABS32W_B	6, 10, 3, 12, ABS32LIST /* Extended Operand Class Expanders:  */ #define MOVFROM_STD(CODE, PREFIX, NAME, SRC, SRC_INFIX) \  {CODE, AV_H8SX, 0, NAME, {{SRC, RDIND,     E}},  {{PREFIX, SRC_INFIX, TO_IND_MOV,     E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTINC, E}},  {{PREFIX, SRC_INFIX, TO_POSTINC_MOV, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTDEC, E}},  {{PREFIX, SRC_INFIX, TO_POSTDEC_MOV, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREINC,  E}},  {{PREFIX, SRC_INFIX, TO_PREINC_MOV,  E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREDEC,  E}},  {{PREFIX, SRC_INFIX, TO_PREDEC_MOV,  E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, DISP2DST,  E}},  {{PREFIX, SRC_INFIX, TO_DISP2_MOV,   E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, DISP16DST, E}},  {{PREFIX, SRC_INFIX, TO_DISP16,  DSTDISP16LIST, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, DISP32DST, E}},  {{PREFIX, SRC_INFIX, TO_DISP32,  DSTDISP32LIST, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB16D, E}},  {{PREFIX, SRC_INFIX, TO_DISP16B, DSTDISP16LIST, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW16D, E}},  {{PREFIX, SRC_INFIX, TO_DISP16W, DSTDISP16LIST, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL16D, E}},  {{PREFIX, SRC_INFIX, TO_DISP16L, DSTDISP16LIST, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXB32D, E}},  {{PREFIX, SRC_INFIX, TO_DISP32B, DSTDISP32LIST, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXW32D, E}},  {{PREFIX, SRC_INFIX, TO_DISP32W, DSTDISP32LIST, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, INDEXL32D, E}},  {{PREFIX, SRC_INFIX, TO_DISP32L, DSTDISP32LIST, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, ABS16DST,  E}},  {{PREFIX, SRC_INFIX, TO_ABS16,   DSTABS16LIST,  E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, ABS32DST,  E}},  {{PREFIX, SRC_INFIX, TO_ABS32,   DSTABS32LIST,  E}}} #define MOVFROM_AD(CODE, PREFIX, NAME, SRC, SRC_INFIX, SRC_SUFFIX) \  {CODE, AV_H8SX, 0, NAME, {{SRC, RDIND,     E}},  {{PREFIX, SRC_INFIX, TO_IND_MOV,     SRC_SUFFIX, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTINC, E}},  {{PREFIX, SRC_INFIX, TO_POSTINC_MOV, SRC_SUFFIX, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, RDPOSTDEC, E}},  {{PREFIX, SRC_INFIX, TO_POSTDEC_MOV, SRC_SUFFIX, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREINC,  E}},  {{PREFIX, SRC_INFIX, TO_PREINC_MOV,  SRC_SUFFIX, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, RDPREDEC,  E}},  {{PREFIX, SRC_INFIX, TO_PREDEC_MOV,  SRC_SUFFIX, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, DISP2DST,  E}},  {{PREFIX, SRC_INFIX, TO_DISP2_MOV,   SRC_SUFFIX, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, DISP16DST, E}},  {{PREFIX, SRC_INFIX, TO_DISP16,  SRC_SUFFIX, DSTDISP16LIST, E}}}, \  {CODE, AV_H8SX, 0, NAME, {{SRC, DISP32DST, E}},  {{PREFIX, SRC_INFIX, TO_DISP32,  SRC_SUFFIX, DSTDISP32LIST, E}}}, \

Lines 1–500 of 1892.

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t