diff options
author | Craig Topper <craig.topper@intel.com> | 2018-10-20 03:51:52 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@intel.com> | 2018-10-20 03:51:52 +0000 |
commit | 4d8ced1807a044a349825ead80b7a15f1872e000 (patch) | |
tree | 15b7c8f8aed9d1a2f016b71d061efd8b5fd23dac /clang/lib/CodeGen/CodeGenFunction.h | |
parent | 0aca35df77e3be49160b20c54f894e71e6cc8f2e (diff) | |
download | bcm5719-llvm-4d8ced1807a044a349825ead80b7a15f1872e000.tar.gz bcm5719-llvm-4d8ced1807a044a349825ead80b7a15f1872e000.zip |
[X86] Add support for more than 32 features for __builtin_cpu_is
libgcc supports more than 32 features by adding a new 32-bit variable __cpu_features2.
This adds the clang support for checking these feature bits.
Patches for compiler-rt and llvm to support this are coming as well.
Probably still need an additional patch for target multiversioning in clang.
Differential Revision: https://reviews.llvm.org/D53458
llvm-svn: 344832
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.h')
-rw-r--r-- | clang/lib/CodeGen/CodeGenFunction.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h index 54289cdd6de..c3f29f0103c 100644 --- a/clang/lib/CodeGen/CodeGenFunction.h +++ b/clang/lib/CodeGen/CodeGenFunction.h @@ -4308,7 +4308,7 @@ public: void EmitCPUDispatchMultiVersionResolver( llvm::Function *Resolver, ArrayRef<CPUDispatchMultiVersionResolverOption> Options); - static uint32_t GetX86CpuSupportsMask(ArrayRef<StringRef> FeatureStrs); + static uint64_t GetX86CpuSupportsMask(ArrayRef<StringRef> FeatureStrs); private: QualType getVarArgType(const Expr *Arg); @@ -4325,7 +4325,7 @@ private: llvm::Value *EmitX86CpuIs(StringRef CPUStr); llvm::Value *EmitX86CpuSupports(const CallExpr *E); llvm::Value *EmitX86CpuSupports(ArrayRef<StringRef> FeatureStrs); - llvm::Value *EmitX86CpuSupports(uint32_t Mask); + llvm::Value *EmitX86CpuSupports(uint64_t Mask); llvm::Value *EmitX86CpuInit(); llvm::Value *FormResolverCondition(const MultiVersionResolverOption &RO); }; |