This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] x86: Define GNU_PROPERTY_X86_ISA_1_AVX512_BF16


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=462cac5884ed4c38e6180b2e2769aaa5225e695b

commit 462cac5884ed4c38e6180b2e2769aaa5225e695b
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Mon Apr 8 17:04:01 2019 -0700

    x86: Define GNU_PROPERTY_X86_ISA_1_AVX512_BF16
    
    Update assembler and readelf to support
    
     #define GNU_PROPERTY_X86_ISA_1_AVX512_BF16  (1U << 24)
    
    for AVX512_BF16.
    
    binutils/
    
    	* readelf.c (decode_x86_isa): Handle
    	GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
    	* testsuite/binutils-all/i386/pr21231b.d: Updated.
    	* testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
    
    gas/
    
    	* config/tc-i386.c (output_insn): Support
    	GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
    	* testsuite/gas/i386/property-2.s: Add AVX512_BF16 test.
    	* testsuite/gas/i386/property-2.d: Updated.
    	* testsuite/gas/i386/x86-64-property-2.d: Likewise.
    
    include/
    
    	* elf/common.h (GNU_PROPERTY_X86_ISA_1_AVX512_BF16): New.

Diff:
---
 binutils/ChangeLog                                | 7 +++++++
 binutils/readelf.c                                | 3 +++
 binutils/testsuite/binutils-all/i386/pr21231b.d   | 2 +-
 binutils/testsuite/binutils-all/x86-64/pr21231b.d | 2 +-
 gas/ChangeLog                                     | 8 ++++++++
 gas/config/tc-i386.c                              | 2 ++
 gas/testsuite/gas/i386/property-2.d               | 2 +-
 gas/testsuite/gas/i386/property-2.s               | 1 +
 gas/testsuite/gas/i386/x86-64-property-2.d        | 2 +-
 include/ChangeLog                                 | 4 ++++
 include/elf/common.h                              | 1 +
 11 files changed, 30 insertions(+), 4 deletions(-)

diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index 3743bc2..4b887a1 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,5 +1,12 @@
 2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
 
+	* readelf.c (decode_x86_isa): Handle
+	GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
+	* testsuite/binutils-all/i386/pr21231b.d: Updated.
+	* testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
+
+2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
+
 	* testsuite/binutils-all/nm.exp: Count i386-moss as ELF.
 
 2019-03-26  Tamar Christina  <tamar.christina@arm.com>
diff --git a/binutils/readelf.c b/binutils/readelf.c
index 5a9d9ff..701ab05 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -17279,6 +17279,9 @@ decode_x86_isa (unsigned int bitmask)
 	case GNU_PROPERTY_X86_ISA_1_AVX512_VNNI:
 	  printf ("AVX512_VNNI");
 	  break;
+	case GNU_PROPERTY_X86_ISA_1_AVX512_BF16:
+	  printf ("AVX512_BF16");
+	  break;
 	default:
 	  printf (_("<unknown: %x>"), bit);
 	  break;
diff --git a/binutils/testsuite/binutils-all/i386/pr21231b.d b/binutils/testsuite/binutils-all/i386/pr21231b.d
index 044a596..0576ce8 100644
--- a/binutils/testsuite/binutils-all/i386/pr21231b.d
+++ b/binutils/testsuite/binutils-all/i386/pr21231b.d
@@ -8,7 +8,7 @@ Displaying notes found in: .note.gnu.property
   GNU                  0x0000002c	NT_GNU_PROPERTY_TYPE_0
       Properties: stack size: 0x800000
 	no copy on protected 
-	x86 ISA used: CMOV, SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2, AVX, AVX2, FMA, AVX512F, AVX512CD, AVX512ER, AVX512PF, AVX512VL, AVX512DQ, AVX512BW, AVX512_4FMAPS, AVX512_4VNNIW, AVX512_BITALG, AVX512_IFMA, AVX512_VBMI, AVX512_VBMI2, AVX512_VNNI, <unknown: 1000000>, <unknown: 2000000>, <unknown: 4000000>, <unknown: 8000000>, <unknown: 10000000>, <unknown: 20000000>, <unknown: 40000000>
+	x86 ISA used: CMOV, SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2, AVX, AVX2, FMA, AVX512F, AVX512CD, AVX512ER, AVX512PF, AVX512VL, AVX512DQ, AVX512BW, AVX512_4FMAPS, AVX512_4VNNIW, AVX512_BITALG, AVX512_IFMA, AVX512_VBMI, AVX512_VBMI2, AVX512_VNNI, AVX512_BF16, <unknown: 2000000>, <unknown: 4000000>, <unknown: 8000000>, <unknown: 10000000>, <unknown: 20000000>, <unknown: 40000000>
 	x86 ISA needed: CMOV, SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2, AVX, AVX2, FMA, AVX512F, AVX512CD, AVX512ER, AVX512PF, AVX512VL, AVX512DQ
   GNU                  0x00000018	NT_GNU_PROPERTY_TYPE_0
       Properties: x86 ISA used: <None>
diff --git a/binutils/testsuite/binutils-all/x86-64/pr21231b.d b/binutils/testsuite/binutils-all/x86-64/pr21231b.d
index 7ee42d5..d4891c2 100644
--- a/binutils/testsuite/binutils-all/x86-64/pr21231b.d
+++ b/binutils/testsuite/binutils-all/x86-64/pr21231b.d
@@ -8,7 +8,7 @@ Displaying notes found in: .note.gnu.property
   GNU                  0x00000038	NT_GNU_PROPERTY_TYPE_0
       Properties: stack size: 0x800000
 	no copy on protected 
-	x86 ISA used: CMOV, SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2, AVX, AVX2, FMA, AVX512F, AVX512CD, AVX512ER, AVX512PF, AVX512VL, AVX512DQ, AVX512BW, AVX512_4FMAPS, AVX512_4VNNIW, AVX512_BITALG, AVX512_IFMA, AVX512_VBMI, AVX512_VBMI2, AVX512_VNNI, <unknown: 1000000>, <unknown: 2000000>, <unknown: 4000000>, <unknown: 8000000>, <unknown: 10000000>, <unknown: 20000000>, <unknown: 40000000>
+	x86 ISA used: CMOV, SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2, AVX, AVX2, FMA, AVX512F, AVX512CD, AVX512ER, AVX512PF, AVX512VL, AVX512DQ, AVX512BW, AVX512_4FMAPS, AVX512_4VNNIW, AVX512_BITALG, AVX512_IFMA, AVX512_VBMI, AVX512_VBMI2, AVX512_VNNI, AVX512_BF16, <unknown: 2000000>, <unknown: 4000000>, <unknown: 8000000>, <unknown: 10000000>, <unknown: 20000000>, <unknown: 40000000>
 	x86 ISA needed: CMOV, SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2, AVX, AVX2, FMA, AVX512F, AVX512CD, AVX512ER, AVX512PF, AVX512VL, AVX512DQ
   GNU                  0x00000020	NT_GNU_PROPERTY_TYPE_0
       Properties: x86 ISA used: <None>
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 50ddc6b..dd53712 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,13 @@
 2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
 
+	* config/tc-i386.c (output_insn): Support
+	GNU_PROPERTY_X86_ISA_1_AVX512_BF16.
+	* testsuite/gas/i386/property-2.s: Add AVX512_BF16 test.
+	* testsuite/gas/i386/property-2.d: Updated.
+	* testsuite/gas/i386/x86-64-property-2.d: Likewise.
+
+2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
+
 	* configure.tgt: Remove i386-*-kaos* and i386-*-chaos targets.
 	* testsuite/gas/i386/i386.exp: Remove *-*-caos* and "*-*-kaos*
 	check.
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index ed8cfe1..4816b54 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -8144,6 +8144,8 @@ output_insn (void)
 	x86_isa_1_used |= GNU_PROPERTY_X86_ISA_1_AVX512_VBMI2;
       if (i.tm.cpu_flags.bitfield.cpuavx512_vnni)
 	x86_isa_1_used |= GNU_PROPERTY_X86_ISA_1_AVX512_VNNI;
+      if (i.tm.cpu_flags.bitfield.cpuavx512_bf16)
+	x86_isa_1_used |= GNU_PROPERTY_X86_ISA_1_AVX512_BF16;
 
       if (i.tm.cpu_flags.bitfield.cpu8087
 	  || i.tm.cpu_flags.bitfield.cpu287
diff --git a/gas/testsuite/gas/i386/property-2.d b/gas/testsuite/gas/i386/property-2.d
index 4803a0a..c7e321d 100644
--- a/gas/testsuite/gas/i386/property-2.d
+++ b/gas/testsuite/gas/i386/property-2.d
@@ -5,5 +5,5 @@
 Displaying notes found in: .note.gnu.property
   Owner                 Data size	Description
   GNU                  0x[0-9a-f]+	NT_GNU_PROPERTY_TYPE_0
-      Properties: x86 ISA used: CMOV, SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2, AVX, AVX2, FMA, AVX512F, AVX512CD, AVX512ER, AVX512PF, AVX512VL, AVX512DQ, AVX512BW, AVX512_4FMAPS, AVX512_4VNNIW, AVX512_BITALG, AVX512_IFMA, AVX512_VBMI, AVX512_VBMI2, AVX512_VNNI
+      Properties: x86 ISA used: CMOV, SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2, AVX, AVX2, FMA, AVX512F, AVX512CD, AVX512ER, AVX512PF, AVX512VL, AVX512DQ, AVX512BW, AVX512_4FMAPS, AVX512_4VNNIW, AVX512_BITALG, AVX512_IFMA, AVX512_VBMI, AVX512_VBMI2, AVX512_VNNI, AVX512_BF16
 	x86 feature used: x86, x87, MMX, XMM, YMM, ZMM, FXSR, XSAVE, XSAVEOPT, XSAVEC
diff --git a/gas/testsuite/gas/i386/property-2.s b/gas/testsuite/gas/i386/property-2.s
index ca73cb8..1528187 100644
--- a/gas/testsuite/gas/i386/property-2.s
+++ b/gas/testsuite/gas/i386/property-2.s
@@ -29,3 +29,4 @@
 	vpermt2b	(%ecx), %zmm0, %zmm1
 	vpcompressb	%zmm0, %zmm1
 	vpdpwssds	(%ecx), %zmm0, %zmm1
+	vcvtne2ps2bf16	(%ecx), %zmm0, %zmm1
diff --git a/gas/testsuite/gas/i386/x86-64-property-2.d b/gas/testsuite/gas/i386/x86-64-property-2.d
index 6ac3d59..72e2131 100644
--- a/gas/testsuite/gas/i386/x86-64-property-2.d
+++ b/gas/testsuite/gas/i386/x86-64-property-2.d
@@ -6,5 +6,5 @@
 Displaying notes found in: .note.gnu.property
   Owner                 Data size	Description
   GNU                  0x[0-9a-f]+	NT_GNU_PROPERTY_TYPE_0
-      Properties: x86 ISA used: CMOV, SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2, AVX, AVX2, FMA, AVX512F, AVX512CD, AVX512ER, AVX512PF, AVX512VL, AVX512DQ, AVX512BW, AVX512_4FMAPS, AVX512_4VNNIW, AVX512_BITALG, AVX512_IFMA, AVX512_VBMI, AVX512_VBMI2, AVX512_VNNI
+      Properties: x86 ISA used: CMOV, SSE, SSE2, SSE3, SSSE3, SSE4_1, SSE4_2, AVX, AVX2, FMA, AVX512F, AVX512CD, AVX512ER, AVX512PF, AVX512VL, AVX512DQ, AVX512BW, AVX512_4FMAPS, AVX512_4VNNIW, AVX512_BITALG, AVX512_IFMA, AVX512_VBMI, AVX512_VBMI2, AVX512_VNNI, AVX512_BF16
 	x86 feature used: x86, x87, MMX, XMM, YMM, ZMM, FXSR, XSAVE, XSAVEOPT, XSAVEC
diff --git a/include/ChangeLog b/include/ChangeLog
index e61a4bd..4c1bedb 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,7 @@
+2019-04-08  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* elf/common.h (GNU_PROPERTY_X86_ISA_1_AVX512_BF16): New.
+
 2019-04-07  Alan Modra  <amodra@gmail.com>
 
 	Merge from gcc.
diff --git a/include/elf/common.h b/include/elf/common.h
index ebdb821..75c4fb7 100644
--- a/include/elf/common.h
+++ b/include/elf/common.h
@@ -829,6 +829,7 @@
 #define GNU_PROPERTY_X86_ISA_1_AVX512_VBMI	(1U << 21)
 #define GNU_PROPERTY_X86_ISA_1_AVX512_VBMI2	(1U << 22)
 #define GNU_PROPERTY_X86_ISA_1_AVX512_VNNI	(1U << 23)
+#define GNU_PROPERTY_X86_ISA_1_AVX512_BF16	(1U << 24)
 
 #define GNU_PROPERTY_X86_FEATURE_2_X86		(1U << 0)
 #define GNU_PROPERTY_X86_FEATURE_2_X87		(1U << 1)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]