mirror of
https://github.com/RPCS3/llvm.git
synced 2025-03-06 01:27:08 +00:00
Revert "Support "preserving" the summary information when using setModule() API in LTOCodeGenerator"
This reverts commit r267657, r267656, and r267655. The test does not pass on multiple bots, I'm unsure why yet but let's unbreak them. From: Mehdi Amini <mehdi.amini@apple.com> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@267664 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
a27504ef06
commit
0808a65936
@ -201,7 +201,6 @@ private:
|
||||
|
||||
LLVMContext &Context;
|
||||
std::unique_ptr<Module> MergedModule;
|
||||
bool MainModuleHasSummary = false;
|
||||
std::unique_ptr<Linker> TheLinker;
|
||||
std::unique_ptr<TargetMachine> TargetMach;
|
||||
bool EmitDwarfDebugInfo = false;
|
||||
|
@ -18,7 +18,6 @@
|
||||
#include "llvm/ADT/Statistic.h"
|
||||
#include "llvm/ADT/StringExtras.h"
|
||||
#include "llvm/Analysis/Passes.h"
|
||||
#include "llvm/Analysis/ModuleSummaryAnalysis.h"
|
||||
#include "llvm/Analysis/TargetLibraryInfo.h"
|
||||
#include "llvm/Analysis/TargetTransformInfo.h"
|
||||
#include "llvm/Bitcode/ReaderWriter.h"
|
||||
@ -146,7 +145,6 @@ void LTOCodeGenerator::setModule(std::unique_ptr<LTOModule> Mod) {
|
||||
|
||||
MergedModule = Mod->takeModule();
|
||||
TheLinker = make_unique<Linker>(*MergedModule);
|
||||
MainModuleHasSummary = Mod->isThinLTO();
|
||||
|
||||
const std::vector<const char*> &Undefs = Mod->getAsmUndefinedRefs();
|
||||
for (int I = 0, E = Undefs.size(); I != E; ++I)
|
||||
@ -211,13 +209,8 @@ bool LTOCodeGenerator::writeMergedModules(const char *Path) {
|
||||
return false;
|
||||
}
|
||||
|
||||
std::unique_ptr<ModuleSummaryIndex> Index;
|
||||
if (MainModuleHasSummary)
|
||||
Index = ModuleSummaryIndexBuilder(MergedModule.get()).takeIndex();
|
||||
|
||||
// write bitcode to it
|
||||
WriteBitcodeToFile(MergedModule.get(), Out.os(), ShouldEmbedUselists,
|
||||
Index.get());
|
||||
WriteBitcodeToFile(MergedModule.get(), Out.os(), ShouldEmbedUselists);
|
||||
Out.os().close();
|
||||
|
||||
if (Out.os().has_error()) {
|
||||
|
@ -1,37 +0,0 @@
|
||||
; RUN: opt -module-summary < %s > %t1
|
||||
; RUN: llvm-lto -save-merged-module -exported-symbol=_main -set-merged-module -o %t2 %t1
|
||||
; RUN: llvm-bcanalyzer -dump %t2.merged.bc | FileCheck %s
|
||||
; Verify that the module includes the ThinLTO informations
|
||||
; CHECK: GLOBALVAL_SUMMARY_BLOCK
|
||||
|
||||
|
||||
target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
|
||||
target triple = "x86_64-apple-macosx10.10.0"
|
||||
|
||||
define i32 @_Z3fooi(i32 %a) {
|
||||
entry:
|
||||
%a.addr = alloca i32, align 4
|
||||
store i32 %a, i32* %a.addr, align 4
|
||||
%0 = load i32, i32* %a.addr, align 4
|
||||
%1 = load i32, i32* %a.addr, align 4
|
||||
%call = call i32 @_Z4bar2i(i32 %1)
|
||||
%add = add nsw i32 %0, %call
|
||||
ret i32 %add
|
||||
}
|
||||
|
||||
define i32 @_Z4bar2i(i32 %a) {
|
||||
entry:
|
||||
%a.addr = alloca i32, align 4
|
||||
store i32 %a, i32* %a.addr, align 4
|
||||
%0 = load i32, i32* %a.addr, align 4
|
||||
%mul = mul nsw i32 2, %0
|
||||
ret i32 %mul
|
||||
}
|
||||
|
||||
define i32 @main() {
|
||||
entry:
|
||||
%retval = alloca i32, align 4
|
||||
store i32 0, i32* %retval
|
||||
%call = call i32 @_Z3fooi(i32 44)
|
||||
ret i32 %call
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user