This revision was automatically updated to reflect the committed changes. Closed by commit rG847abddedca9: [X86] Add AMX_COMPLEX to Graniterapids (authored by FreddyYe).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147525/new/ https://reviews.llvm.org/D147525 Files: clang/lib/Basic/Targets/X86.cpp clang/lib/Headers/immintrin.h clang/test/Preprocessor/predefined-arch-macros.c clang/test/Preprocessor/x86_target_features.c llvm/lib/Target/X86/X86.td llvm/lib/TargetParser/X86TargetParser.cpp Index: llvm/lib/TargetParser/X86TargetParser.cpp =================================================================== --- llvm/lib/TargetParser/X86TargetParser.cpp +++ llvm/lib/TargetParser/X86TargetParser.cpp @@ -208,7 +208,8 @@ FeatureSERIALIZE | FeatureSHSTK | FeatureTSXLDTRK | FeatureUINTR | FeatureWAITPKG; constexpr FeatureBitset FeaturesGraniteRapids = - FeaturesSapphireRapids | FeatureAMX_FP16 | FeaturePREFETCHI; + FeaturesSapphireRapids | FeatureAMX_FP16 | FeaturePREFETCHI | + FeatureAMX_COMPLEX; // Intel Atom processors. // Bonnell has feature parity with Core2 and adds MOVBE. Index: llvm/lib/Target/X86/X86.td =================================================================== --- llvm/lib/Target/X86/X86.td +++ llvm/lib/Target/X86/X86.td @@ -1054,7 +1054,8 @@ // Graniterapids list<SubtargetFeature> GNRAdditionalFeatures = [FeatureAMXFP16, - FeaturePREFETCHI]; + FeaturePREFETCHI, + FeatureAMXCOMPLEX]; list<SubtargetFeature> GNRFeatures = !listconcat(SPRFeatures, GNRAdditionalFeatures); Index: clang/test/Preprocessor/x86_target_features.c =================================================================== --- clang/test/Preprocessor/x86_target_features.c +++ clang/test/Preprocessor/x86_target_features.c @@ -562,14 +562,14 @@ // RUN: %clang -target x86_64-unknown-linux-gnu -march=x86-64 -mamx-complex -x c \ // RUN: -E -dM -o - %s | FileCheck -check-prefix=AMX-COMPLEX %s -// AMX-COMPLEX: #define __AMXCOMPLEX__ 1 +// AMX-COMPLEX: #define __AMX_COMPLEX__ 1 // RUN: %clang -target x86_64-unknown-linux-gnu -march=x86-64 -mno-amx-complex -x c \ // RUN: -E -dM -o - %s | FileCheck -check-prefix=NO-AMX-COMPLEX %s // RUN: %clang -target x86_64-unknown-linux-gnu -march=x86-64 -mamx-complex -mno-amx-tile \ // RUN: -x c -E -dM -o - %s | FileCheck -check-prefix=NO-AMX-COMPLEX %s -// NO-AMX-COMPLEX-NOT: #define __AMXCOMPLEX__ 1 +// NO-AMX-COMPLEX-NOT: #define __AMX_COMPLEX__ 1 // RUN: %clang -target i386-unknown-unknown -march=atom -mavxvnni -x c -E -dM -o - %s | FileCheck -match-full-lines --check-prefix=AVXVNNI %s Index: clang/test/Preprocessor/predefined-arch-macros.c =================================================================== --- clang/test/Preprocessor/predefined-arch-macros.c +++ clang/test/Preprocessor/predefined-arch-macros.c @@ -1798,6 +1798,7 @@ // RUN: | FileCheck -match-full-lines %s -check-prefix=CHECK_GNR_M32 // CHECK_GNR_M32: #define __AES__ 1 // CHECK_GNR_M32: #define __AMX_BF16__ 1 +// CHECK_GNR_M32: #define __AMX_COMPLEX__ 1 // CHECK_GNR_M32: #define __AMX_FP16__ 1 // CHECK_GNR_M32: #define __AMX_INT8__ 1 // CHECK_GNR_M32: #define __AMX_TILE__ 1 @@ -1872,6 +1873,7 @@ // RUN: | FileCheck -match-full-lines %s -check-prefix=CHECK_GNR_M64 // CHECK_GNR_M64: #define __AES__ 1 // CHECK_GNR_M64: #define __AMX_BF16__ 1 +// CHECK_GNR_M64: #define __AMX_COMPLEX__ 1 // CHECK_GNR_M64: #define __AMX_FP16__ 1 // CHECK_GNR_M64: #define __AMX_INT8__ 1 // CHECK_GNR_M64: #define __AMX_TILE__ 1 Index: clang/lib/Headers/immintrin.h =================================================================== --- clang/lib/Headers/immintrin.h +++ clang/lib/Headers/immintrin.h @@ -626,7 +626,7 @@ #endif #if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AMXCOMPLEX__) + defined(__AMX_COMPLEX__) #include <amxcomplexintrin.h> #endif Index: clang/lib/Basic/Targets/X86.cpp =================================================================== --- clang/lib/Basic/Targets/X86.cpp +++ clang/lib/Basic/Targets/X86.cpp @@ -802,7 +802,7 @@ if (HasAMXFP16) Builder.defineMacro("__AMX_FP16__"); if (HasAMXCOMPLEX) - Builder.defineMacro("__AMXCOMPLEX__"); + Builder.defineMacro("__AMX_COMPLEX__"); if (HasCMPCCXADD) Builder.defineMacro("__CMPCCXADD__"); if (HasRAOINT)
Index: llvm/lib/TargetParser/X86TargetParser.cpp =================================================================== --- llvm/lib/TargetParser/X86TargetParser.cpp +++ llvm/lib/TargetParser/X86TargetParser.cpp @@ -208,7 +208,8 @@ FeatureSERIALIZE | FeatureSHSTK | FeatureTSXLDTRK | FeatureUINTR | FeatureWAITPKG; constexpr FeatureBitset FeaturesGraniteRapids = - FeaturesSapphireRapids | FeatureAMX_FP16 | FeaturePREFETCHI; + FeaturesSapphireRapids | FeatureAMX_FP16 | FeaturePREFETCHI | + FeatureAMX_COMPLEX; // Intel Atom processors. // Bonnell has feature parity with Core2 and adds MOVBE. Index: llvm/lib/Target/X86/X86.td =================================================================== --- llvm/lib/Target/X86/X86.td +++ llvm/lib/Target/X86/X86.td @@ -1054,7 +1054,8 @@ // Graniterapids list<SubtargetFeature> GNRAdditionalFeatures = [FeatureAMXFP16, - FeaturePREFETCHI]; + FeaturePREFETCHI, + FeatureAMXCOMPLEX]; list<SubtargetFeature> GNRFeatures = !listconcat(SPRFeatures, GNRAdditionalFeatures); Index: clang/test/Preprocessor/x86_target_features.c =================================================================== --- clang/test/Preprocessor/x86_target_features.c +++ clang/test/Preprocessor/x86_target_features.c @@ -562,14 +562,14 @@ // RUN: %clang -target x86_64-unknown-linux-gnu -march=x86-64 -mamx-complex -x c \ // RUN: -E -dM -o - %s | FileCheck -check-prefix=AMX-COMPLEX %s -// AMX-COMPLEX: #define __AMXCOMPLEX__ 1 +// AMX-COMPLEX: #define __AMX_COMPLEX__ 1 // RUN: %clang -target x86_64-unknown-linux-gnu -march=x86-64 -mno-amx-complex -x c \ // RUN: -E -dM -o - %s | FileCheck -check-prefix=NO-AMX-COMPLEX %s // RUN: %clang -target x86_64-unknown-linux-gnu -march=x86-64 -mamx-complex -mno-amx-tile \ // RUN: -x c -E -dM -o - %s | FileCheck -check-prefix=NO-AMX-COMPLEX %s -// NO-AMX-COMPLEX-NOT: #define __AMXCOMPLEX__ 1 +// NO-AMX-COMPLEX-NOT: #define __AMX_COMPLEX__ 1 // RUN: %clang -target i386-unknown-unknown -march=atom -mavxvnni -x c -E -dM -o - %s | FileCheck -match-full-lines --check-prefix=AVXVNNI %s Index: clang/test/Preprocessor/predefined-arch-macros.c =================================================================== --- clang/test/Preprocessor/predefined-arch-macros.c +++ clang/test/Preprocessor/predefined-arch-macros.c @@ -1798,6 +1798,7 @@ // RUN: | FileCheck -match-full-lines %s -check-prefix=CHECK_GNR_M32 // CHECK_GNR_M32: #define __AES__ 1 // CHECK_GNR_M32: #define __AMX_BF16__ 1 +// CHECK_GNR_M32: #define __AMX_COMPLEX__ 1 // CHECK_GNR_M32: #define __AMX_FP16__ 1 // CHECK_GNR_M32: #define __AMX_INT8__ 1 // CHECK_GNR_M32: #define __AMX_TILE__ 1 @@ -1872,6 +1873,7 @@ // RUN: | FileCheck -match-full-lines %s -check-prefix=CHECK_GNR_M64 // CHECK_GNR_M64: #define __AES__ 1 // CHECK_GNR_M64: #define __AMX_BF16__ 1 +// CHECK_GNR_M64: #define __AMX_COMPLEX__ 1 // CHECK_GNR_M64: #define __AMX_FP16__ 1 // CHECK_GNR_M64: #define __AMX_INT8__ 1 // CHECK_GNR_M64: #define __AMX_TILE__ 1 Index: clang/lib/Headers/immintrin.h =================================================================== --- clang/lib/Headers/immintrin.h +++ clang/lib/Headers/immintrin.h @@ -626,7 +626,7 @@ #endif #if !(defined(_MSC_VER) || defined(__SCE__)) || __has_feature(modules) || \ - defined(__AMXCOMPLEX__) + defined(__AMX_COMPLEX__) #include <amxcomplexintrin.h> #endif Index: clang/lib/Basic/Targets/X86.cpp =================================================================== --- clang/lib/Basic/Targets/X86.cpp +++ clang/lib/Basic/Targets/X86.cpp @@ -802,7 +802,7 @@ if (HasAMXFP16) Builder.defineMacro("__AMX_FP16__"); if (HasAMXCOMPLEX) - Builder.defineMacro("__AMXCOMPLEX__"); + Builder.defineMacro("__AMX_COMPLEX__"); if (HasCMPCCXADD) Builder.defineMacro("__CMPCCXADD__"); if (HasRAOINT)
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits