From 0f480f50100d75e690692803ee112510d437c657 Mon Sep 17 00:00:00 2001 From: NAKAMURA Takumi Date: Sun, 1 Mar 2015 04:16:28 +0000 Subject: [PATCH] Revert r230655, "gold-plugin: "Upgrade" debug info and handle its warnings." It emits *millions of warnings* during selfhosting LTO build, to choke the buildbot with gigbytes of log. llvm-svn: 230885 --- llvm/test/tools/gold/Inputs/drop-debug.bc | Bin 1152 -> 0 bytes llvm/test/tools/gold/drop-debug.ll | 8 ------ llvm/tools/gold/gold-plugin.cpp | 40 ++++++++---------------------- 3 files changed, 11 insertions(+), 37 deletions(-) delete mode 100644 llvm/test/tools/gold/Inputs/drop-debug.bc delete mode 100644 llvm/test/tools/gold/drop-debug.ll diff --git a/llvm/test/tools/gold/Inputs/drop-debug.bc b/llvm/test/tools/gold/Inputs/drop-debug.bc deleted file mode 100644 index f9c471f8e0d1e6960c4efb96961bc1799c3c2bb4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1152 zcmZuxO=ufO6dwIpv$j^Nb)vTGW_Fp4lj2KZ>l9&I7D(E(vB3qkIn>9Mu!9M-UH_mz z_pp*&twPnHBrWLBgEqL}-U7Yk(1TVsLKrouIT>Mu)!2#&c5K?v=GKl}(^DVJ%$s>{ z-uvG7h6%})wnziOTL5roFt7puE|3A!!}o%9`?P}{9lvi`qp$W+LxTP5s78Na4c&K! z=Gals7{yHwj9$MoHBc0Xw?5J6A#v#ntk>D-MtLJpJ0&5(#~c73k@eE;;n#l?u@p54 z?--~X5n4dlH&9LFy9R1i(4N6p(+Dh6Fjmr+02NQ@UI`{CJvO3yH9bBB<7IuRsC!3X zY)X%T!=UiOK$^+74Ob&5R1JRHaP4*YrzU@Bpnb!&o#vk!e5=B@O}?e^+ahXM@NS21 zVSd*{U2@AJw8|u@(6mUps_4lPsHu88&|ULk=CdY~B6E?61z<{n zD@{jNgK8NrVwh+;UTQGK!dMwD<8$jzEL_r{{I&&X1Q!wPw4Y-XO6<_!OtH}a&W)N~ z{*4OsdxCeYnKwRMv}L|~AJ6_sbQ~1JH^6Oe(h8EK&QD1Ic`U%(1IUT4$hk8FeiJX>z^8?}(_a@jIr_>bOWNx@looL2rh?(3q1Zb8zZ7 zkld$5=4F66sW6>W$5Dm(v&lF&78PAp^<`jN9f8S`zLJ1(kR4aE6KZx0WcwAMZK#G4p)S@ht4VX;rRoogW^bGW%ioQJDE$VUAelx#YfSuMHWG zY`z`Y_c%CFl*b?2{4@Qyho;BzTV%aPX=tm1Zh0*JygatHSqNz`nSjfsMY;>z$1L+o zW3JI5p=$C^40KECJ9EokYS{dB*T>b%QnSV_H diff --git a/llvm/test/tools/gold/drop-debug.ll b/llvm/test/tools/gold/drop-debug.ll deleted file mode 100644 index b8c4d8c..0000000 --- a/llvm/test/tools/gold/drop-debug.ll +++ /dev/null @@ -1,8 +0,0 @@ -; RUN: %gold -plugin %llvmshlibdir/LLVMgold.so \ -; RUN: --plugin-opt=emit-llvm -shared %p/Inputs/drop-debug.bc \ -; RUN: -o t2.bc 2>&1 | FileCheck %s - -; drop-debug.bc was created from "void f(void) {}" with clang 3.5 and -; -gline-tables-only, so it contains old debug info. - -; CHECK: warning: LLVM gold plugin: ignoring debug info with an invalid version (1) in {{.*}}/Inputs/drop-debug.bc diff --git a/llvm/tools/gold/gold-plugin.cpp b/llvm/tools/gold/gold-plugin.cpp index e3a57b5..e654a15 100644 --- a/llvm/tools/gold/gold-plugin.cpp +++ b/llvm/tools/gold/gold-plugin.cpp @@ -20,7 +20,6 @@ #include "llvm/Bitcode/ReaderWriter.h" #include "llvm/CodeGen/Analysis.h" #include "llvm/CodeGen/CommandFlags.h" -#include "llvm/IR/AutoUpgrade.h" #include "llvm/IR/Constants.h" #include "llvm/IR/DiagnosticInfo.h" #include "llvm/IR/DiagnosticPrinter.h" @@ -274,11 +273,11 @@ static bool shouldSkip(uint32_t Symflags) { } static void diagnosticHandler(const DiagnosticInfo &DI, void *Context) { - if (const auto *BDI = dyn_cast(&DI)) { - std::error_code EC = BDI->getError(); - if (EC == BitcodeError::InvalidBitcodeSignature) - return; - } + assert(DI.getSeverity() == DS_Error && "Only expecting errors"); + const auto &BDI = cast(DI); + std::error_code EC = BDI.getError(); + if (EC == BitcodeError::InvalidBitcodeSignature) + return; std::string ErrStorage; { @@ -286,21 +285,8 @@ static void diagnosticHandler(const DiagnosticInfo &DI, void *Context) { DiagnosticPrinterRawOStream DP(OS); DI.print(DP); } - ld_plugin_level Level; - switch (DI.getSeverity()) { - case DS_Error: - message(LDPL_FATAL, "LLVM gold plugin has failed to create LTO module: %s", - ErrStorage.c_str()); - llvm_unreachable("Fatal doesn't return."); - case DS_Warning: - Level = LDPL_WARNING; - break; - case DS_Remark: - case DS_Note: - Level = LDPL_INFO; - break; - } - message(Level, "LLVM gold plugin: %s", ErrStorage.c_str()); + message(LDPL_FATAL, "LLVM gold plugin has failed to create LTO module: %s", + ErrStorage.c_str()); } /// Called by gold to see whether this file is one that our plugin can handle. @@ -575,7 +561,7 @@ static void freeSymName(ld_plugin_symbol &Sym) { static std::unique_ptr getModuleForFile(LLVMContext &Context, claimed_file &F, - ld_plugin_input_file &Info, raw_fd_ostream *ApiFile, + off_t Filesize, raw_fd_ostream *ApiFile, StringSet<> &Internalize, StringSet<> &Maybe) { if (get_symbols(F.handle, F.syms.size(), &F.syms[0]) != LDPS_OK) @@ -585,8 +571,7 @@ getModuleForFile(LLVMContext &Context, claimed_file &F, if (get_view(F.handle, &View) != LDPS_OK) message(LDPL_FATAL, "Failed to get a view of file"); - MemoryBufferRef BufferRef(StringRef((const char *)View, Info.filesize), - Info.name); + MemoryBufferRef BufferRef(StringRef((const char *)View, Filesize), ""); ErrorOr> ObjOrErr = object::IRObjectFile::create(BufferRef, Context); @@ -598,8 +583,6 @@ getModuleForFile(LLVMContext &Context, claimed_file &F, Module &M = Obj.getModule(); - UpgradeDebugInfo(M); - SmallPtrSet Used; collectUsedGlobalVariables(M, Used, /*CompilerUsed*/ false); @@ -809,8 +792,6 @@ static ld_plugin_status allSymbolsReadHook(raw_fd_ostream *ApiFile) { return LDPS_OK; LLVMContext Context; - Context.setDiagnosticHandler(diagnosticHandler); - std::unique_ptr Combined(new Module("ld-temp.o", Context)); Linker L(Combined.get()); @@ -823,7 +804,8 @@ static ld_plugin_status allSymbolsReadHook(raw_fd_ostream *ApiFile) { if (get_input_file(F.handle, &File) != LDPS_OK) message(LDPL_FATAL, "Failed to get file information"); std::unique_ptr M = - getModuleForFile(Context, F, File, ApiFile, Internalize, Maybe); + getModuleForFile(Context, F, File.filesize, ApiFile, + Internalize, Maybe); if (!options::triple.empty()) M->setTargetTriple(options::triple.c_str()); else if (M->getTargetTriple().empty()) { -- 2.7.4