Index: src/IceBrowserCompileServer.cpp |
diff --git a/src/IceBrowserCompileServer.cpp b/src/IceBrowserCompileServer.cpp |
index 284a0c937523e34d99b9c38956f7714e2e4a2b42..30b3f2001e9d07f2133bfa2ea748eac12592d7c6 100644 |
--- a/src/IceBrowserCompileServer.cpp |
+++ b/src/IceBrowserCompileServer.cpp |
@@ -172,6 +172,13 @@ void BrowserCompileServer::getParsedFlags(uint32_t NumThreads, int argc, |
Flags->setUseSandboxing(true); |
Flags->setOutFileType(FT_Elf); |
Flags->setTargetArch(getTargetArch()); |
+ // Make the prefixes short to reduce the chance that string construction will |
+ // have to resort to malloc(). Note that this won't change anything if the |
+ // pexe was finalize with "--no-strip-syms". TODO(stichnot): This will be |
+ // unnecessary when we stop directly constructing strings that are used for |
+ // names and lookup keys. |
+ Flags->setDefaultFunctionPrefix("F"); |
+ Flags->setDefaultGlobalPrefix("G"); |
ExtraFlags->setBuildOnRead(true); |
ExtraFlags->setInputFileFormat(llvm::PNaClFormat); |
} |