diff options
author | Terry Guo <xuepeng.guo@intel.com> | 2018-11-05 13:28:48 +0800 |
---|---|---|
committer | Cui,Lili <lili.cui@intel.com> | 2020-09-23 10:47:44 +0800 |
commit | c4694f172b51a2168b8cc15109ab1b97fc0bcb9c (patch) | |
tree | 1c50e8425fdad64ae7dd733b0f377e392fa3ee52 /opcodes/i386-gen.c | |
parent | 9fcff415820e37db422500d80c78df32fa2f34f6 (diff) | |
download | gdb-c4694f172b51a2168b8cc15109ab1b97fc0bcb9c.zip gdb-c4694f172b51a2168b8cc15109ab1b97fc0bcb9c.tar.gz gdb-c4694f172b51a2168b8cc15109ab1b97fc0bcb9c.tar.bz2 |
Enable support to Intel Keylocker instructions
gas/
* NEWS: Add Key Locker.
* config/tc-i386.c (cpu_arch): Add .kl and .wide_kl.
(cpu_noarch): Likewise.
* doc/c-i386.texi: Document kl and wide_kl.
* testsuite/gas/i386/i386.exp: Run keylocker tests.
* testsuite/gas/i386/keylocker-intel.d: New test.
* testsuite/gas/i386/keylocker.d: Likewise.
* testsuite/gas/i386/keylocker.s: Likewise.
* testsuite/gas/i386/x86-64-keylocker-intel.d: Likewise.
* testsuite/gas/i386/x86-64-keylocker.d: Likewise.
* testsuite/gas/i386/x86-64-keylocker.s: Likewise.
* testsuite/gas/i386/x86-64-property-10.d: Likewise.
* testsuite/gas/i386/property-10.d: Likewise.
* testsuite/gas/i386/property-10.s: Likewise.
opcodes/
* i386-dis.c (enum): Add REG_0F38D8_PREFIX_1,
MOD_0F38FA_PREFIX_1, MOD_0F38FB_PREFIX_1,
MOD_0F38DC_PREFIX_1, MOD_0F38DD_PREFIX_1,
MOD_0F38DE_PREFIX_1, MOD_0F38DF_PREFIX_1,
PREFIX_0F38D8, PREFIX_0F38FA, PREFIX_0F38FB.
(reg_table): New instructions (see prefixes above).
(prefix_table): Likewise.
(three_byte_table): Likewise.
(mod_table): Likewise
* i386-gen.c (cpu_flag_init): Add CPU_KL_FLAGS, CPU_WIDE_KL_FLAGS,
CPU_ANY_KL_FLAGS and CPU_ANY_WIDE_KL_FLAGS.
(cpu_flags): Likewise.
(operand_type_init): Likewise.
* i386-opc.h (enum): Add CpuKL and CpuWide_KL.
(i386_cpu_flags): Add cpukl and cpuwide_kl.
* i386-opc.tbl: Add KL and WIDE_KL insns.
* i386-init.h: Regenerate.
* i386-tbl.h: Likewise.
Diffstat (limited to 'opcodes/i386-gen.c')
-rw-r--r-- | opcodes/i386-gen.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/opcodes/i386-gen.c b/opcodes/i386-gen.c index 3334155..3cee219 100644 --- a/opcodes/i386-gen.c +++ b/opcodes/i386-gen.c @@ -321,6 +321,10 @@ static initializer cpu_flag_init[] = "CpuSEV_ES" }, { "CPU_TSXLDTRK_FLAGS", "CpuTSXLDTRK"}, + { "CPU_KL_FLAGS", + "CpuKL" }, + { "CPU_WIDEKL_FLAGS", + "CpuWideKL" }, { "CPU_ANY_X87_FLAGS", "CPU_ANY_287_FLAGS|Cpu8087" }, { "CPU_ANY_287_FLAGS", @@ -407,6 +411,10 @@ static initializer cpu_flag_init[] = "CpuAVX512_VP2INTERSECT" }, { "CPU_ANY_TSXLDTRK_FLAGS", "CpuTSXLDTRK" }, + { "CPU_ANY_KL_FLAGS", + "CpuKL|CpuWideKL" }, + { "CPU_ANY_WIDEKL_FLAGS", + "CpuWideKL" }, }; static initializer operand_type_init[] = @@ -636,6 +644,8 @@ static bitfield cpu_flags[] = BITFIELD (CpuMCOMMIT), BITFIELD (CpuSEV_ES), BITFIELD (CpuTSXLDTRK), + BITFIELD (CpuKL), + BITFIELD (CpuWideKL), #ifdef CpuUnused BITFIELD (CpuUnused), #endif |