linux/arch/x86/lib/inat-tables.c

/* x86 opcode map generated from x86-opcode-map.txt */
/* Do not change this code. */

/* Table: one byte opcode */
const insn_attr_t inat_primary_table[INAT_OPCODE_TABLE_SIZE] =;

/* Table: 2-byte opcode (0x0f) */
const insn_attr_t inat_escape_table_1[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_escape_table_1_1[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_escape_table_1_2[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_escape_table_1_3[INAT_OPCODE_TABLE_SIZE] =;

/* Table: 3-byte opcode 1 (0x0f 0x38) */
const insn_attr_t inat_escape_table_2[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_escape_table_2_1[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_escape_table_2_2[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_escape_table_2_3[INAT_OPCODE_TABLE_SIZE] =;

/* Table: 3-byte opcode 2 (0x0f 0x3a) */
const insn_attr_t inat_escape_table_3[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_escape_table_3_1[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_escape_table_3_2[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_escape_table_3_3[INAT_OPCODE_TABLE_SIZE] =;

/* Table: EVEX map 4 */
const insn_attr_t inat_avx_table_4[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_avx_table_4_1[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_avx_table_4_2[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_avx_table_4_3[INAT_OPCODE_TABLE_SIZE] =;

/* Table: EVEX map 5 */
const insn_attr_t inat_avx_table_5[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_avx_table_5_1[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_avx_table_5_2[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_avx_table_5_3[INAT_OPCODE_TABLE_SIZE] =;

/* Table: EVEX map 6 */
const insn_attr_t inat_avx_table_6[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_avx_table_6_1[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_avx_table_6_2[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_avx_table_6_3[INAT_OPCODE_TABLE_SIZE] =;

/* Table: VEX map 7 */
const insn_attr_t inat_avx_table_7[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_avx_table_7_2[INAT_OPCODE_TABLE_SIZE] =;
const insn_attr_t inat_avx_table_7_3[INAT_OPCODE_TABLE_SIZE] =;

/* GrpTable: Grp1 */

/* GrpTable: Grp1A */

/* GrpTable: Grp2 */

/* GrpTable: Grp3_1 */
const insn_attr_t inat_group_table_6[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp3_2 */
const insn_attr_t inat_group_table_7[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp4 */
const insn_attr_t inat_group_table_8[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp5 */
const insn_attr_t inat_group_table_9[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp6 */
const insn_attr_t inat_group_table_10[INAT_GROUP_TABLE_SIZE] =;
const insn_attr_t inat_group_table_10_3[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp7 */
const insn_attr_t inat_group_table_11[INAT_GROUP_TABLE_SIZE] =;
const insn_attr_t inat_group_table_11_2[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp8 */

/* GrpTable: Grp9 */
const insn_attr_t inat_group_table_24[INAT_GROUP_TABLE_SIZE] =;
const insn_attr_t inat_group_table_24_1[INAT_GROUP_TABLE_SIZE] =;
const insn_attr_t inat_group_table_24_2[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp10 */

/* GrpTable: Grp11A */
const insn_attr_t inat_group_table_4[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp11B */
const insn_attr_t inat_group_table_5[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp12 */
const insn_attr_t inat_group_table_16[INAT_GROUP_TABLE_SIZE] =;
const insn_attr_t inat_group_table_16_1[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp13 */
const insn_attr_t inat_group_table_17[INAT_GROUP_TABLE_SIZE] =;
const insn_attr_t inat_group_table_17_1[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp14 */
const insn_attr_t inat_group_table_18[INAT_GROUP_TABLE_SIZE] =;
const insn_attr_t inat_group_table_18_1[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp15 */
const insn_attr_t inat_group_table_21[INAT_GROUP_TABLE_SIZE] =;
const insn_attr_t inat_group_table_21_1[INAT_GROUP_TABLE_SIZE] =;
const insn_attr_t inat_group_table_21_2[INAT_GROUP_TABLE_SIZE] =;
const insn_attr_t inat_group_table_21_3[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp16 */
const insn_attr_t inat_group_table_13[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp17 */
const insn_attr_t inat_group_table_27[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp18 */
const insn_attr_t inat_group_table_25[INAT_GROUP_TABLE_SIZE] =;
const insn_attr_t inat_group_table_25_1[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp19 */
const insn_attr_t inat_group_table_26[INAT_GROUP_TABLE_SIZE] =;
const insn_attr_t inat_group_table_26_1[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp20 */
const insn_attr_t inat_group_table_14[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: Grp21 */
const insn_attr_t inat_group_table_15[INAT_GROUP_TABLE_SIZE] =;
const insn_attr_t inat_group_table_15_2[INAT_GROUP_TABLE_SIZE] =;

/* GrpTable: GrpP */

/* GrpTable: GrpPDLK */

/* GrpTable: GrpRNG */

#ifndef __BOOT_COMPRESSED

/* Escape opcode map array */
const insn_attr_t * const inat_escape_tables[INAT_ESC_MAX + 1][INAT_LSTPFX_MAX + 1] =;

/* Group opcode map array */
const insn_attr_t * const inat_group_tables[INAT_GRP_MAX + 1][INAT_LSTPFX_MAX + 1] =;

/* AVX opcode map array */
const insn_attr_t * const inat_avx_tables[X86_VEX_M_MAX + 1][INAT_LSTPFX_MAX + 1] =;

#else /* !__BOOT_COMPRESSED */

/* Escape opcode map array */
static const insn_attr_t *inat_escape_tables[INAT_ESC_MAX + 1][INAT_LSTPFX_MAX + 1];

/* Group opcode map array */
static const insn_attr_t *inat_group_tables[INAT_GRP_MAX + 1][INAT_LSTPFX_MAX + 1];

/* AVX opcode map array */
static const insn_attr_t *inat_avx_tables[X86_VEX_M_MAX + 1][INAT_LSTPFX_MAX + 1];

static void inat_init_tables(void)
{
	/* Print Escape opcode map array */
	inat_escape_tables[1][0] = inat_escape_table_1;
	inat_escape_tables[1][1] = inat_escape_table_1_1;
	inat_escape_tables[1][2] = inat_escape_table_1_2;
	inat_escape_tables[1][3] = inat_escape_table_1_3;
	inat_escape_tables[2][0] = inat_escape_table_2;
	inat_escape_tables[2][1] = inat_escape_table_2_1;
	inat_escape_tables[2][2] = inat_escape_table_2_2;
	inat_escape_tables[2][3] = inat_escape_table_2_3;
	inat_escape_tables[3][0] = inat_escape_table_3;
	inat_escape_tables[3][1] = inat_escape_table_3_1;
	inat_escape_tables[3][2] = inat_escape_table_3_2;
	inat_escape_tables[3][3] = inat_escape_table_3_3;

	/* Print Group opcode map array */
	inat_group_tables[4][0] = inat_group_table_4;
	inat_group_tables[5][0] = inat_group_table_5;
	inat_group_tables[6][0] = inat_group_table_6;
	inat_group_tables[7][0] = inat_group_table_7;
	inat_group_tables[8][0] = inat_group_table_8;
	inat_group_tables[9][0] = inat_group_table_9;
	inat_group_tables[10][0] = inat_group_table_10;
	inat_group_tables[10][3] = inat_group_table_10_3;
	inat_group_tables[11][0] = inat_group_table_11;
	inat_group_tables[11][2] = inat_group_table_11_2;
	inat_group_tables[13][0] = inat_group_table_13;
	inat_group_tables[14][0] = inat_group_table_14;
	inat_group_tables[15][0] = inat_group_table_15;
	inat_group_tables[15][2] = inat_group_table_15_2;
	inat_group_tables[16][0] = inat_group_table_16;
	inat_group_tables[16][1] = inat_group_table_16_1;
	inat_group_tables[17][0] = inat_group_table_17;
	inat_group_tables[17][1] = inat_group_table_17_1;
	inat_group_tables[18][0] = inat_group_table_18;
	inat_group_tables[18][1] = inat_group_table_18_1;
	inat_group_tables[21][0] = inat_group_table_21;
	inat_group_tables[21][1] = inat_group_table_21_1;
	inat_group_tables[21][2] = inat_group_table_21_2;
	inat_group_tables[21][3] = inat_group_table_21_3;
	inat_group_tables[24][0] = inat_group_table_24;
	inat_group_tables[24][1] = inat_group_table_24_1;
	inat_group_tables[24][2] = inat_group_table_24_2;
	inat_group_tables[25][0] = inat_group_table_25;
	inat_group_tables[25][1] = inat_group_table_25_1;
	inat_group_tables[26][0] = inat_group_table_26;
	inat_group_tables[26][1] = inat_group_table_26_1;
	inat_group_tables[27][0] = inat_group_table_27;

	/* Print AVX opcode map array */
	inat_avx_tables[1][0] = inat_escape_table_1;
	inat_avx_tables[1][1] = inat_escape_table_1_1;
	inat_avx_tables[1][2] = inat_escape_table_1_2;
	inat_avx_tables[1][3] = inat_escape_table_1_3;
	inat_avx_tables[2][0] = inat_escape_table_2;
	inat_avx_tables[2][1] = inat_escape_table_2_1;
	inat_avx_tables[2][2] = inat_escape_table_2_2;
	inat_avx_tables[2][3] = inat_escape_table_2_3;
	inat_avx_tables[3][0] = inat_escape_table_3;
	inat_avx_tables[3][1] = inat_escape_table_3_1;
	inat_avx_tables[3][2] = inat_escape_table_3_2;
	inat_avx_tables[3][3] = inat_escape_table_3_3;
	inat_avx_tables[4][0] = inat_avx_table_4;
	inat_avx_tables[4][1] = inat_avx_table_4_1;
	inat_avx_tables[4][2] = inat_avx_table_4_2;
	inat_avx_tables[4][3] = inat_avx_table_4_3;
	inat_avx_tables[5][0] = inat_avx_table_5;
	inat_avx_tables[5][1] = inat_avx_table_5_1;
	inat_avx_tables[5][2] = inat_avx_table_5_2;
	inat_avx_tables[5][3] = inat_avx_table_5_3;
	inat_avx_tables[6][0] = inat_avx_table_6;
	inat_avx_tables[6][1] = inat_avx_table_6_1;
	inat_avx_tables[6][2] = inat_avx_table_6_2;
	inat_avx_tables[6][3] = inat_avx_table_6_3;
	inat_avx_tables[7][0] = inat_avx_table_7;
	inat_avx_tables[7][2] = inat_avx_table_7_2;
	inat_avx_tables[7][3] = inat_avx_table_7_3;
}
#endif