diff options
author | Igor Tsimbalist <igor.v.tsimbalist@intel.com> | 2018-01-23 19:56:30 +0300 |
---|---|---|
committer | Igor Tsimbalist <igor.v.tsimbalist@intel.com> | 2018-01-23 20:09:35 +0300 |
commit | be3a8dca2d7241878302ca55f45129d532b6f746 (patch) | |
tree | 8466b4e7555c4c5c3923a92984c9875b18e609d1 /gas/testsuite | |
parent | 3233d7d074e59b83f68a22071cff597f00d5ae81 (diff) | |
download | gdb-be3a8dca2d7241878302ca55f45129d532b6f746.zip gdb-be3a8dca2d7241878302ca55f45129d532b6f746.tar.gz gdb-be3a8dca2d7241878302ca55f45129d532b6f746.tar.bz2 |
Enable Intel PCONFIG instruction.
Intel has disclosed a set of new instructions for Icelake processor.
The spec is
https://software.intel.com/sites/default/files/managed/c5/15/architecture-instruction-set-extensions-programming-reference.pdf
This patch enables Intel PCONFIG instruction.
gas/
* config/tc-i386.c (cpu_arch): Add .pconfig.
* doc/c-i386.texi: Document .pconfig.
* testsuite/gas/i386/i386.exp: Add PCONFIG tests.
* testsuite/gas/i386/pconfig-intel.d: New test.
* testsuite/gas/i386/pconfig.d: Likewise.
* testsuite/gas/i386/pconfig.s: Likewise.
* testsuite/gas/i386/x86-64-pconfig-intel.d: Likewise.
* testsuite/gas/i386/x86-64-pconfig.d: Likewise.
* testsuite/gas/i386/x86-64-pconfig.s: Likewise.
opcodes/
* i386-dis.c (enum): Add pconfig.
* i386-gen.c (cpu_flag_init): Add CPU_PCONFIG_FLAGS.
(cpu_flags): Add CpuPCONFIG.
* i386-opc.h (enum): Add CpuPCONFIG.
(i386_cpu_flags): Add cpupconfig.
* i386-opc.tbl: Add PCONFIG instruction.
* i386-init.h: Regenerate.
* i386-tbl.h: Likewise.
Diffstat (limited to 'gas/testsuite')
-rw-r--r-- | gas/testsuite/gas/i386/i386.exp | 4 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/pconfig-intel.d | 11 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/pconfig.d | 11 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/pconfig.s | 5 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-pconfig-intel.d | 11 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-pconfig.d | 11 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-pconfig.s | 5 |
7 files changed, 58 insertions, 0 deletions
diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp index 4123cd8..a21ef84 100644 --- a/gas/testsuite/gas/i386/i386.exp +++ b/gas/testsuite/gas/i386/i386.exp @@ -415,6 +415,8 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_32_check]] run_dump_test "vpclmulqdq-intel" run_dump_test "wbnoinvd" run_dump_test "wbnoinvd-intel" + run_dump_test "pconfig" + run_dump_test "pconfig-intel" run_list_test "avx512vl-1" "-al" run_list_test "avx512vl-2" "-al" run_dump_test "fpu-bad" @@ -884,6 +886,8 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t run_dump_test "x86-64-vpclmulqdq-intel" run_dump_test "x86-64-wbnoinvd" run_dump_test "x86-64-wbnoinvd-intel" + run_dump_test "x86-64-pconfig" + run_dump_test "x86-64-pconfig-intel" run_dump_test "x86-64-fence-as-lock-add-yes" run_dump_test "x86-64-fence-as-lock-add-no" run_dump_test "x86-64-pr20141" diff --git a/gas/testsuite/gas/i386/pconfig-intel.d b/gas/testsuite/gas/i386/pconfig-intel.d new file mode 100644 index 0000000..08584fe --- /dev/null +++ b/gas/testsuite/gas/i386/pconfig-intel.d @@ -0,0 +1,11 @@ +#objdump: -dwMintel +#name: i386 PCONFIG (Intel disassembly) +#source: pconfig.s + +.*: +file format .* + +Disassembly of section .text: + +0+ <_start>: +[ ]*[a-f0-9]+:[ ]*0f 01 c5[ ]*pconfig[ ]* +#pass diff --git a/gas/testsuite/gas/i386/pconfig.d b/gas/testsuite/gas/i386/pconfig.d new file mode 100644 index 0000000..de61788 --- /dev/null +++ b/gas/testsuite/gas/i386/pconfig.d @@ -0,0 +1,11 @@ +#objdump: -dw +#name: i386 PCONFIG insn + +.*: +file format .* + + +Disassembly of section .text: + +0+ <_start>: +[ ]*[a-f0-9]+:[ ]*0f 01 c5[ ]*pconfig[ ]* +#pass diff --git a/gas/testsuite/gas/i386/pconfig.s b/gas/testsuite/gas/i386/pconfig.s new file mode 100644 index 0000000..f08c628 --- /dev/null +++ b/gas/testsuite/gas/i386/pconfig.s @@ -0,0 +1,5 @@ +# Check 32bit PCONFIG instructions. + + .text +_start: + pconfig diff --git a/gas/testsuite/gas/i386/x86-64-pconfig-intel.d b/gas/testsuite/gas/i386/x86-64-pconfig-intel.d new file mode 100644 index 0000000..08584fe --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-pconfig-intel.d @@ -0,0 +1,11 @@ +#objdump: -dwMintel +#name: i386 PCONFIG (Intel disassembly) +#source: pconfig.s + +.*: +file format .* + +Disassembly of section .text: + +0+ <_start>: +[ ]*[a-f0-9]+:[ ]*0f 01 c5[ ]*pconfig[ ]* +#pass diff --git a/gas/testsuite/gas/i386/x86-64-pconfig.d b/gas/testsuite/gas/i386/x86-64-pconfig.d new file mode 100644 index 0000000..de61788 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-pconfig.d @@ -0,0 +1,11 @@ +#objdump: -dw +#name: i386 PCONFIG insn + +.*: +file format .* + + +Disassembly of section .text: + +0+ <_start>: +[ ]*[a-f0-9]+:[ ]*0f 01 c5[ ]*pconfig[ ]* +#pass diff --git a/gas/testsuite/gas/i386/x86-64-pconfig.s b/gas/testsuite/gas/i386/x86-64-pconfig.s new file mode 100644 index 0000000..8fb9b02 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-pconfig.s @@ -0,0 +1,5 @@ +# Check 64bit PCONFIG instructions. + + .text +_start: + pconfig |