Index: lib/LTO/LTOCodeGenerator.cpp |
diff --git a/lib/LTO/LTOCodeGenerator.cpp b/lib/LTO/LTOCodeGenerator.cpp |
index c663d43fe7fdec56979651a2bde5f3052427c54a..7705bfe46b5aa1f11475df4c17995061d4002b86 100644 |
--- a/lib/LTO/LTOCodeGenerator.cpp |
+++ b/lib/LTO/LTOCodeGenerator.cpp |
@@ -277,6 +277,15 @@ bool LTOCodeGenerator::determineTarget(std::string &errMsg) { |
return true; |
std::string TripleStr = IRLinker.getModule()->getTargetTriple(); |
+ |
+ // @LOCALMOD-BEGIN |
+ // Pretend that we are ARM for name mangling and assembly conventions. |
+ // https://code.google.com/p/nativeclient/issues/detail?id=2554 |
+ if (TripleStr == "le32-unknown-nacl") { |
+ TripleStr = "armv7a-none-nacl-gnueabi"; |
+ } |
+ // @LOCALMOD-END |
+ |
if (TripleStr.empty()) |
TripleStr = sys::getDefaultTargetTriple(); |
llvm::Triple Triple(TripleStr); |