diff options
author | Bradley Smith <bradley.smith@arm.com> | 2015-02-04 16:23:24 +0000 |
---|---|---|
committer | Bradley Smith <bradley.smith@arm.com> | 2015-02-04 16:23:24 +0000 |
commit | 9f4cd59e80070c72b5c5267756d84390dd8e52ff (patch) | |
tree | 6d682918f106c014791fc055229011228ce34caa /llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp | |
parent | 94e222f943c89a2d7be0ef25f02f0ea2901f1fbe (diff) | |
download | bcm5719-llvm-9f4cd59e80070c72b5c5267756d84390dd8e52ff.tar.gz bcm5719-llvm-9f4cd59e80070c72b5c5267756d84390dd8e52ff.zip |
[ARM] Fix subtarget feature set truncation when using .cpu directive
This is a bug that was caused due to storing the feature bitset in a 32-bit
variable when it is a 64-bit mask, discarding the top half of the feature set.
llvm-svn: 228151
Diffstat (limited to 'llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp')
-rw-r--r-- | llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp index 3b7a67d0d1f..b89f453d27d 100644 --- a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp +++ b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp @@ -9182,8 +9182,7 @@ bool ARMAsmParser::parseDirectiveCPU(SMLoc L) { // see: http://llvm.org/bugs/show_bug.cgi?id=20757 STI.InitMCProcessorInfo(CPU, ""); STI.InitCPUSchedModel(CPU); - unsigned FB = ComputeAvailableFeatures(STI.getFeatureBits()); - setAvailableFeatures(FB); + setAvailableFeatures(ComputeAvailableFeatures(STI.getFeatureBits())); return false; } |