x86: Add Intel ENCLV to assembler and disassembler
authorH.J. Lu <hjl.tools@gmail.com>
Fri, 5 Oct 2018 18:56:42 +0000 (11:56 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Fri, 5 Oct 2018 18:56:42 +0000 (11:56 -0700)
gas/

* testsuite/gas/i386/se1.s: Add enclv.
* testsuite/gas/i386/x86-64-se1.s: Likewise.
* testsuite/gas/i386/se1.d: Updated.
* testsuite/gas/i386/x86-64-se1.d: Likewise.

opcodes/

* i386-dis.c (rm_table): Add enclv.
* i386-opc.tbl: Add enclv.
* i386-tbl.h: Regenerated.

gas/ChangeLog
gas/testsuite/gas/i386/se1.d
gas/testsuite/gas/i386/se1.s
gas/testsuite/gas/i386/x86-64-se1.d
gas/testsuite/gas/i386/x86-64-se1.s
opcodes/ChangeLog
opcodes/i386-dis.c
opcodes/i386-opc.tbl
opcodes/i386-tbl.h

index 9b6afa1..b531980 100644 (file)
@@ -1,3 +1,10 @@
+2018-10-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * testsuite/gas/i386/se1.s: Add enclv.
+       * testsuite/gas/i386/x86-64-se1.s: Likewise.
+       * testsuite/gas/i386/se1.d: Updated.
+       * testsuite/gas/i386/x86-64-se1.d: Likewise.
+
 2018-10-05  Sudakshina Das  <sudi.das@arm.com>
 
        * config/tc-arm.c (arm_ext_predres): New.
index ff2685c..d7800ab 100644 (file)
@@ -10,4 +10,5 @@ Disassembly of section .text:
 0+ <_start>:
 [      ]*[a-f0-9]+:    0f 01 cf                encls  
 [      ]*[a-f0-9]+:    0f 01 d7                enclu  
+[      ]*[a-f0-9]+:    0f 01 c0                enclv  
 #pass
index 1b57ac8..92d5795 100644 (file)
@@ -5,3 +5,4 @@ _start:
 
        encls
        enclu
+       enclv
index 29494f0..a515219 100644 (file)
@@ -10,4 +10,5 @@ Disassembly of section .text:
 0+ <_start>:
 [      ]*[a-f0-9]+:    0f 01 cf                encls  
 [      ]*[a-f0-9]+:    0f 01 d7                enclu  
+[      ]*[a-f0-9]+:    0f 01 c0                enclv  
 #pass
index 1b57ac8..92d5795 100644 (file)
@@ -5,3 +5,4 @@ _start:
 
        encls
        enclu
+       enclv
index b66a46e..27ca2da 100644 (file)
@@ -1,3 +1,9 @@
+2018-10-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * i386-dis.c (rm_table): Add enclv.
+       * i386-opc.tbl: Add enclv.
+       * i386-tbl.h: Regenerated.
+
 2018-10-05  Sudakshina Das  <sudi.das@arm.com>
 
        * arm-dis.c (arm_opcodes): Add sb.
index bc4db68..a6e0a8d 100644 (file)
@@ -11027,7 +11027,7 @@ static const struct dis386 rm_table[][8] = {
   },
   {
     /* RM_0F01_REG_0 */
-    { Bad_Opcode },
+    { "enclv",         { Skip_MODRM }, 0 },
     { "vmcall",                { Skip_MODRM }, 0 },
     { "vmlaunch",      { Skip_MODRM }, 0 },
     { "vmresume",      { Skip_MODRM }, 0 },
index 3aec575..409b4cd 100644 (file)
@@ -3992,6 +3992,7 @@ xsavec64, 1, 0xfc7, 0x4, 2, CpuXSAVEC|Cpu64, Modrm|No_bSuf|No_wSuf|No_lSuf|No_sS
 
 encls, 0, 0xf01cf, None, 3, CpuSE1, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { 0 }
 enclu, 0, 0xf01d7, None, 3, CpuSE1, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { 0 }
+enclv, 0, 0xf01c0, None, 3, CpuSE1, No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf, { 0 }
 
 // SGX instructions end.
 
index 3a09599..539e5db 100644 (file)
@@ -66539,6 +66539,20 @@ const insn_template i386_optab[] =
     { { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
          0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
          0, 0 } } } },
+  { "enclv", 0, 0xf01c0, None, 3,
+    { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
+        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+        0, 0, 0, 0, 0, 0 } },
+    { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1,
+      1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+      0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+      0, 0 },
+    { { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+         0, 0 } } } },
   { "vcvtpd2udqx", 2, 0x79, None, 1,
     { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0,