r248479 - [ARM] Follow-up to fix crash "-target arm -mcpu=generic", without "-march="
Vladimir Sukharev via cfe-commits
cfe-commits at lists.llvm.org
Thu Sep 24 02:55:08 PDT 2015
Author: vsukharev
Date: Thu Sep 24 04:55:08 2015
New Revision: 248479
URL: http://llvm.org/viewvc/llvm-project?rev=248479&view=rev
Log:
[ARM] Follow-up to fix crash "-target arm -mcpu=generic", without "-march="
Fix of dangling StringRef after temporary std::string is destroyed
Follow-up to: http://reviews.llvm.org/rL248370
Reviewers: alexfh
Subscribers: cfe-commits
Modified:
cfe/trunk/lib/Driver/Tools.cpp
Modified: cfe/trunk/lib/Driver/Tools.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Tools.cpp?rev=248479&r1=248478&r2=248479&view=diff
==============================================================================
--- cfe/trunk/lib/Driver/Tools.cpp (original)
+++ cfe/trunk/lib/Driver/Tools.cpp Thu Sep 24 04:55:08 2015
@@ -6164,13 +6164,13 @@ std::string arm::getARMTargetCPU(StringR
StringRef arm::getLLVMArchSuffixForARM(StringRef CPU, StringRef Arch,
const llvm::Triple &Triple) {
unsigned ArchKind;
- Arch = tools::arm::getARMArch(Arch, Triple);
if (CPU == "generic") {
- ArchKind = llvm::ARM::parseArch(Arch);
+ StringRef ARMArch = tools::arm::getARMArch(Arch, Triple);
+ ArchKind = llvm::ARM::parseArch(ARMArch);
if (ArchKind == llvm::ARM::AK_INVALID)
// In case of generic Arch, i.e. "arm",
// extract arch from default cpu of the Triple
- ArchKind = llvm::ARM::parseCPUArch(Triple.getARMCPUForArch(Arch));
+ ArchKind = llvm::ARM::parseCPUArch(Triple.getARMCPUForArch(ARMArch));
} else {
ArchKind = llvm::ARM::parseCPUArch(CPU);
}
More information about the cfe-commits
mailing list