Blame SOURCES/gcc11-detect-sapphirerapids.patch

7f2fd6
commit 63dd214dce603f4f99e2cb272255b6c2b4308c3d
7f2fd6
Author: Cui,Lili <lili.cui@intel.com>
7f2fd6
Date:   Mon Nov 7 11:25:41 2022 +0800
7f2fd6
7f2fd6
    Remove AVX512_VP2INTERSECT from PTA_SAPPHIRERAPIDS
7f2fd6
    
7f2fd6
    gcc/ChangeLog:
7f2fd6
    
7f2fd6
            * config/i386/driver-i386.cc (host_detect_local_cpu):
7f2fd6
            Move sapphirerapids out of AVX512_VP2INTERSECT.
7f2fd6
            * config/i386/i386.h: Remove AVX512_VP2INTERSECT from PTA_SAPPHIRERAPIDS
7f2fd6
            * doc/invoke.texi: Remove AVX512_VP2INTERSECT from SAPPHIRERAPIDS
7f2fd6
    
7f2fd6
    (cherry picked from commit d644dfe36d9733c767af62d37250253ced6efd8c)
7f2fd6
7f2fd6
diff --git a/gcc/config/i386/driver-i386.c b/gcc/config/i386/driver-i386.c
7f2fd6
index f844a168ddb..90f84aba4ee 100644
7f2fd6
--- a/gcc/config/i386/driver-i386.c
7f2fd6
+++ b/gcc/config/i386/driver-i386.c
7f2fd6
@@ -574,15 +574,12 @@ const char *host_detect_local_cpu (int argc, const char **argv)
7f2fd6
 	      /* This is unknown family 0x6 CPU.  */
7f2fd6
 	      if (has_feature (FEATURE_AVX))
7f2fd6
 		{
7f2fd6
+		  /* Assume Tiger Lake */
7f2fd6
 		  if (has_feature (FEATURE_AVX512VP2INTERSECT))
7f2fd6
-		    {
7f2fd6
-		      if (has_feature (FEATURE_TSXLDTRK))
7f2fd6
-			/* Assume Sapphire Rapids.  */
7f2fd6
-			cpu = "sapphirerapids";
7f2fd6
-		      else
7f2fd6
-			/* Assume Tiger Lake */
7f2fd6
-			cpu = "tigerlake";
7f2fd6
-		    }
7f2fd6
+		    cpu = "tigerlake";
7f2fd6
+		  /* Assume Sapphire Rapids.  */
7f2fd6
+		  else if (has_feature (FEATURE_TSXLDTRK))
7f2fd6
+		    cpu = "sapphirerapids";
7f2fd6
 		  /* Assume Cooper Lake */
7f2fd6
 		  else if (has_feature (FEATURE_AVX512BF16))
7f2fd6
 		    cpu = "cooperlake";
7f2fd6
diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h
7f2fd6
index ac0e5da623c..e03279bcf39 100644
7f2fd6
--- a/gcc/config/i386/i386.h
7f2fd6
+++ b/gcc/config/i386/i386.h
7f2fd6
@@ -2562,7 +2562,7 @@ constexpr wide_int_bitmask PTA_ICELAKE_SERVER = PTA_ICELAKE_CLIENT
7f2fd6
 constexpr wide_int_bitmask PTA_TIGERLAKE = PTA_ICELAKE_CLIENT | PTA_MOVDIRI
7f2fd6
   | PTA_MOVDIR64B | PTA_CLWB | PTA_AVX512VP2INTERSECT | PTA_KL | PTA_WIDEKL;
7f2fd6
 constexpr wide_int_bitmask PTA_SAPPHIRERAPIDS = PTA_ICELAKE_SERVER | PTA_MOVDIRI
7f2fd6
-  | PTA_MOVDIR64B | PTA_AVX512VP2INTERSECT | PTA_ENQCMD | PTA_CLDEMOTE
7f2fd6
+  | PTA_MOVDIR64B | PTA_ENQCMD | PTA_CLDEMOTE
7f2fd6
   | PTA_PTWRITE | PTA_WAITPKG | PTA_SERIALIZE | PTA_TSXLDTRK | PTA_AMX_TILE
7f2fd6
   | PTA_AMX_INT8 | PTA_AMX_BF16 | PTA_UINTR | PTA_AVXVNNI | PTA_AVX512BF16;
7f2fd6
 constexpr wide_int_bitmask PTA_KNL = PTA_BROADWELL | PTA_AVX512PF
7f2fd6
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
7f2fd6
index 3419483c532..6b3afb827a5 100644
7f2fd6
--- a/gcc/doc/invoke.texi
7f2fd6
+++ b/gcc/doc/invoke.texi
7f2fd6
@@ -30236,9 +30236,9 @@ Intel sapphirerapids CPU with 64-bit extensions, MOVBE, MMX, SSE, SSE2, SSE3,
7f2fd6
 SSSE3, SSE4.1, SSE4.2, POPCNT, CX16, SAHF, FXSR, AVX, XSAVE, PCLMUL, FSGSBASE,
7f2fd6
 RDRND, F16C, AVX2, BMI, BMI2, LZCNT, FMA, MOVBE, HLE, RDSEED, ADCX, PREFETCHW,
7f2fd6
 AES, CLFLUSHOPT, XSAVEC, XSAVES, SGX, AVX512F, AVX512VL, AVX512BW, AVX512DQ,
7f2fd6
-AVX512CD, PKU, AVX512VBMI, AVX512IFMA, SHA, AVX512VNNI, GFNI, VAES, AVX512VBMI2
7f2fd6
+AVX512CD, PKU, AVX512VBMI, AVX512IFMA, SHA, AVX512VNNI, GFNI, VAES, AVX512VBMI2,
7f2fd6
 VPCLMULQDQ, AVX512BITALG, RDPID, AVX512VPOPCNTDQ, PCONFIG, WBNOINVD, CLWB,
7f2fd6
-MOVDIRI, MOVDIR64B, AVX512VP2INTERSECT, ENQCMD, CLDEMOTE, PTWRITE, WAITPKG,
7f2fd6
+MOVDIRI, MOVDIR64B, ENQCMD, CLDEMOTE, PTWRITE, WAITPKG,
7f2fd6
 SERIALIZE, TSXLDTRK, UINTR, AMX-BF16, AMX-TILE, AMX-INT8, AVX-VNNI and
7f2fd6
 AVX512BF16 instruction set support.
7f2fd6