diff options
author | Roman Divacky <rdivacky@freebsd.org> | 2015-10-02 18:25:25 +0000 |
---|---|---|
committer | Roman Divacky <rdivacky@freebsd.org> | 2015-10-02 18:25:25 +0000 |
commit | 4b5507a037af420b28600a792bab1e6850b5cc73 (patch) | |
tree | 1071977ed81774ffecb015cdedc5bfd5ab7ab8a7 /llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp | |
parent | 8d67b8e05375f13d03bff615788e8bedbd97892d (diff) | |
download | bcm5719-llvm-4b5507a037af420b28600a792bab1e6850b5cc73.tar.gz bcm5719-llvm-4b5507a037af420b28600a792bab1e6850b5cc73.zip |
Actually switch the arch when we see .arch. PR21695
llvm-svn: 249165
Diffstat (limited to 'llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp')
-rw-r--r-- | llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp index 68188b13137..b0bde037b91 100644 --- a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp +++ b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp @@ -15,6 +15,7 @@ #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringExtras.h" #include "llvm/ADT/StringSwitch.h" +#include "llvm/ADT/Triple.h" #include "llvm/ADT/Twine.h" #include "llvm/MC/MCAsmInfo.h" #include "llvm/MC/MCAssembler.h" @@ -9023,6 +9024,10 @@ bool ARMAsmParser::parseDirectiveArch(SMLoc L) { return false; } + Triple T; + STI.setDefaultFeatures(T.getARMCPUForArch(Arch)); + setAvailableFeatures(ComputeAvailableFeatures(STI.getFeatureBits())); + getTargetStreamer().emitArch(ID); return false; } |