[10/12] x86: drop CpuVREX

Message ID 5B0EBAC802000078001C7120@prv1-mh.provo.novell.com
State Superseded
Headers show
Series
  • x86: various improvements
Related show

Commit Message

Jan Beulich May 30, 2018, 2:52 p.m.
It is fully redundant with CpuAVX512F.

gas/
2018-05-30  Jan Beulich  <jbeulich@suse.com>

	* config/tc-i386.c (parse_real_register): Use cpuavx512f instead
	of cpuvrex.

opcodes/
2018-05-30  Jan Beulich  <jbeulich@suse.com>

	* i386-gen.c (cpu_flag_init): Drop CpuVREX uses.
	(cpu_flags): Drop CpuVREX.
	* i386-opc.h (CpuVREX): Delete.
	(union i386_cpu_flags): Remove cpuvrex.
	* i386-init.h, i386-tbl.h: Re-generate.

Patch

--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -10330,7 +10330,7 @@  parse_real_register (char *reg_string, c
      mode, and require EVEX encoding.  */
   if (r->reg_flags & RegVRex)
     {
-      if (!cpu_arch_flags.bitfield.cpuvrex
+      if (!cpu_arch_flags.bitfield.cpuavx512f
 	  || flag_code != CODE_64BIT)
 	return (const reg_entry *) NULL;
 
--- a/opcodes/i386-gen.c
+++ b/opcodes/i386-gen.c
@@ -199,7 +199,7 @@  static initializer cpu_flag_init[] =
   { "CPU_AVX2_FLAGS",
     "CPU_AVX_FLAGS|CpuAVX2" },
   { "CPU_AVX512F_FLAGS",
-    "CPU_AVX2_FLAGS|CpuVREX|CpuAVX512F" },
+    "CPU_AVX2_FLAGS|CpuAVX512F" },
   { "CPU_AVX512CD_FLAGS",
     "CPU_AVX512F_FLAGS|CpuAVX512CD" },
   { "CPU_AVX512ER_FLAGS",
@@ -317,7 +317,7 @@  static initializer cpu_flag_init[] =
   { "CPU_ANY_AVX2_FLAGS",
     "CpuAVX2" },
   { "CPU_ANY_AVX512F_FLAGS",
-    "CpuVREX|CpuAVX512CD|CpuAVX512ER|CpuAVX512PF|CpuAVX512DQ|CpuAVX512BW|CpuAVX512VL|CpuAVX512IFMA|CpuAVX512VBMI|CpuAVX512_4FMAPS|CpuAVX512_4VNNIW|CpuAVX512_VPOPCNTDQ|CpuAVX512_VBMI2|CpuAVX512_VNNI|CpuAVX512_BITALG|CpuAVX512F" },
+    "CpuAVX512F|CpuAVX512CD|CpuAVX512ER|CpuAVX512PF|CpuAVX512DQ|CpuAVX512BW|CpuAVX512VL|CpuAVX512IFMA|CpuAVX512VBMI|CpuAVX512_4FMAPS|CpuAVX512_4VNNIW|CpuAVX512_VPOPCNTDQ|CpuAVX512_VBMI2|CpuAVX512_VNNI|CpuAVX512_BITALG" },
   { "CPU_ANY_AVX512CD_FLAGS",
     "CpuAVX512CD" },
   { "CPU_ANY_AVX512ER_FLAGS",
@@ -561,7 +561,6 @@  static bitfield cpu_flags[] =
   BITFIELD (CpuPRFCHW),
   BITFIELD (CpuSMAP),
   BITFIELD (CpuSHA),
-  BITFIELD (CpuVREX),
   BITFIELD (CpuClflushOpt),
   BITFIELD (CpuXSAVES),
   BITFIELD (CpuXSAVEC),

--- a/opcodes/i386-opc.h
+++ b/opcodes/i386-opc.h
@@ -174,8 +174,6 @@  enum
   CpuSMAP,
   /* SHA instructions required.  */
   CpuSHA,
-  /* VREX support required  */
-  CpuVREX,
   /* CLFLUSHOPT instruction required */
   CpuClflushOpt,
   /* XSAVES/XRSTORS instruction required */
@@ -329,7 +327,6 @@  typedef union i386_cpu_flags
       unsigned int cpuprfchw:1;
       unsigned int cpusmap:1;
       unsigned int cpusha:1;
-      unsigned int cpuvrex:1;
       unsigned int cpuclflushopt:1;
       unsigned int cpuxsaves:1;
       unsigned int cpuxsavec:1;