mirror of
https://github.com/RPCSX/llvm.git
synced 2025-02-02 18:42:36 +00:00
[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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@228151 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
8dc0ae6606
commit
960ce2aafa
@ -9182,8 +9182,7 @@ bool ARMAsmParser::parseDirectiveCPU(SMLoc L) {
|
|||||||
// see: http://llvm.org/bugs/show_bug.cgi?id=20757
|
// see: http://llvm.org/bugs/show_bug.cgi?id=20757
|
||||||
STI.InitMCProcessorInfo(CPU, "");
|
STI.InitMCProcessorInfo(CPU, "");
|
||||||
STI.InitCPUSchedModel(CPU);
|
STI.InitCPUSchedModel(CPU);
|
||||||
unsigned FB = ComputeAvailableFeatures(STI.getFeatureBits());
|
setAvailableFeatures(ComputeAvailableFeatures(STI.getFeatureBits()));
|
||||||
setAvailableFeatures(FB);
|
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -11,3 +11,7 @@ dsb
|
|||||||
dsb
|
dsb
|
||||||
// CHECK-ERROR: error: Unknown CPU name
|
// CHECK-ERROR: error: Unknown CPU name
|
||||||
.cpu foobar
|
.cpu foobar
|
||||||
|
// CHECK: .cpu cortex-m3
|
||||||
|
.cpu cortex-m3
|
||||||
|
// CHECK: sub sp, #16
|
||||||
|
sub sp,#16
|
||||||
|
Loading…
x
Reference in New Issue
Block a user