diff options
author | Vladimir Sukharev <vladimir.sukharev@arm.com> | 2015-09-24 09:55:08 +0000 |
---|---|---|
committer | Vladimir Sukharev <vladimir.sukharev@arm.com> | 2015-09-24 09:55:08 +0000 |
commit | 2eef4b52cd861574b0cb835616e200450457a18d (patch) | |
tree | 1f062a1a8a97ab4dc9de96e6edc4d264c028d616 /clang/lib/Driver/Tools.cpp | |
parent | 68d938649ea83545615dc646a86f23c6590fcc61 (diff) | |
download | llvm-2eef4b52cd861574b0cb835616e200450457a18d.zip llvm-2eef4b52cd861574b0cb835616e200450457a18d.tar.gz llvm-2eef4b52cd861574b0cb835616e200450457a18d.tar.bz2 |
[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
llvm-svn: 248479
Diffstat (limited to 'clang/lib/Driver/Tools.cpp')
-rw-r--r-- | clang/lib/Driver/Tools.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index e8a0852..4061598 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -6164,13 +6164,13 @@ std::string arm::getARMTargetCPU(StringRef CPU, StringRef Arch, 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); } |