LTOCodeGenerator::LTOCodeGenerator()
: Context(getGlobalContext()), Linker(new Module("ld-temp.o", Context)),
TargetMach(NULL), EmitDwarfDebugInfo(false), ScopeRestrictionsDone(false),
- CodeModel(LTO_CODEGEN_PIC_MODEL_DYNAMIC),
- InternalizeStrategy(LTO_INTERNALIZE_FULL), NativeObjectFile(NULL) {
+ CodeModel(LTO_CODEGEN_PIC_MODEL_DYNAMIC), NativeObjectFile(NULL) {
initializeLTOPasses();
}
llvm_unreachable("Unknown PIC model!");
}
-void
-LTOCodeGenerator::setInternalizeStrategy(lto_internalize_strategy Strategy) {
- switch (Strategy) {
- case LTO_INTERNALIZE_FULL:
- case LTO_INTERNALIZE_NONE:
- case LTO_INTERNALIZE_HIDDEN:
- InternalizeStrategy = Strategy;
- return;
- }
- llvm_unreachable("Unknown internalize strategy!");
-}
-
bool LTOCodeGenerator::writeMergedModules(const char *path,
std::string &errMsg) {
if (!determineTarget(errMsg))
}
void LTOCodeGenerator::applyScopeRestrictions() {
- if (ScopeRestrictionsDone || !shouldInternalize())
+ if (ScopeRestrictionsDone)
return;
Module *mergedModule = Linker.getModule();
LLVMCompilerUsed->setSection("llvm.metadata");
}
- passes.add(
- createInternalizePass(MustPreserveList, shouldOnlyInternalizeHidden()));
+ passes.add(createInternalizePass(MustPreserveList));
// apply scope restrictions
passes.run(*mergedModule);