[PATCH] D50495: [DebugInfo] Do not generate duplicated label debug info if it has been processed.

Hsiangkai Wang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 10 21:05:59 PDT 2018


HsiangKai added a comment.

In https://reviews.llvm.org/D50495#1225927, @sammccall wrote:

> Hmm, so thinking about it, since this is a clang change and the crash reproduces with llc, this is just generating code that triggers an existing LLVM bug.
>
> I think we still need to revert it for now as it triggers a clang crash :-(
>
> F7142423: bugpoint-reduced-named-md.bc <https://reviews.llvm.org/F7142423>
>
>   llc: /usr/local/google/home/sammccall/src/llvm/lib/MC/MCExpr.cpp:176: llvm::MCSymbolRefExpr::MCSymbolRefExpr(const llvm::MCSymbol *, llvm::MCSymbolRefExpr::VariantKind, const llvm::MCAsmInfo *, llvm::SMLoc): Assertion `Symbol' failed.
>   Stack dump:
>   0.	Program arguments: bin/llc bugpoint-reduced-named-md.bc -split-dwarf-file out.dwo 
>   #0 0x0000000003659b19 llvm::sys::PrintStackTrace(llvm::raw_ostream&) /usr/local/google/home/sammccall/src/llvm/lib/Support/Unix/Signals.inc:490:11
>   #1 0x0000000003659cc9 PrintStackTraceSignalHandler(void*) /usr/local/google/home/sammccall/src/llvm/lib/Support/Unix/Signals.inc:554:1
>   #2 0x0000000003657f26 llvm::sys::RunSignalHandlers() /usr/local/google/home/sammccall/src/llvm/lib/Support/Signals.cpp:66:5
>   #3 0x000000000365a2e7 SignalHandler(int) /usr/local/google/home/sammccall/src/llvm/lib/Support/Unix/Signals.inc:353:1
>   #4 0x00007f8f521d20c0 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x110c0)
>   #5 0x00007f8f50d63fcf gsignal (/lib/x86_64-linux-gnu/libc.so.6+0x32fcf)
>   #6 0x00007f8f50d653fa abort (/lib/x86_64-linux-gnu/libc.so.6+0x343fa)
>   #7 0x00007f8f50d5ce37 (/lib/x86_64-linux-gnu/libc.so.6+0x2be37)
>   #8 0x00007f8f50d5cee2 (/lib/x86_64-linux-gnu/libc.so.6+0x2bee2)
>   #9 0x0000000002e36e0f llvm::MCSymbolRefExpr::MCSymbolRefExpr(llvm::MCSymbol const*, llvm::MCSymbolRefExpr::VariantKind, llvm::MCAsmInfo const*, llvm::SMLoc) /usr/local/google/home/sammccall/src/llvm/lib/MC/MCExpr.cpp:177:1
>   #10 0x0000000002e36eb6 llvm::MCSymbolRefExpr::create(llvm::MCSymbol const*, llvm::MCSymbolRefExpr::VariantKind, llvm::MCContext&, llvm::SMLoc) /usr/local/google/home/sammccall/src/llvm/lib/MC/MCExpr.cpp:182:10
>   #11 0x0000000000c12368 llvm::MCSymbolRefExpr::create(llvm::MCSymbol const*, llvm::MCContext&) /usr/local/google/home/sammccall/src/llvm/include/llvm/MC/MCExpr.h:323:5
>   #12 0x00000000025e4262 llvm::AddressPool::emit(llvm::AsmPrinter&, llvm::MCSection*) /usr/local/google/home/sammccall/src/llvm/lib/CodeGen/AsmPrinter/AddressPool.cpp:60:15
>   #13 0x000000000250dfa9 llvm::DwarfDebug::emitDebugAddr() /usr/local/google/home/sammccall/src/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp:2380:1
>   #14 0x000000000250be72 llvm::DwarfDebug::endModule() /usr/local/google/home/sammccall/src/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp:896:11
>   #15 0x00000000024dd8ee llvm::AsmPrinter::doFinalization(llvm::Module&) /usr/local/google/home/sammccall/src/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp:1450:12
>   #16 0x0000000002cf8bf4 llvm::FPPassManager::doFinalization(llvm::Module&) /usr/local/google/home/sammccall/src/llvm/lib/IR/LegacyPassManager.cpp:1596:16
>   #17 0x0000000002cf95e3 (anonymous namespace)::MPPassManager::runOnModule(llvm::Module&) /usr/local/google/home/sammccall/src/llvm/lib/IR/LegacyPassManager.cpp:1670:16
>   #18 0x0000000002cf8d9e llvm::legacy::PassManagerImpl::run(llvm::Module&) /usr/local/google/home/sammccall/src/llvm/lib/IR/LegacyPassManager.cpp:1754:16
>   #19 0x0000000002cf9891 llvm::legacy::PassManager::run(llvm::Module&) /usr/local/google/home/sammccall/src/llvm/lib/IR/LegacyPassManager.cpp:1785:3
>   #20 0x0000000000bd8a5c compileModule(char**, llvm::LLVMContext&) /usr/local/google/home/sammccall/src/llvm/tools/llc/llc.cpp:600:41
>   #21 0x0000000000bd695d main /usr/local/google/home/sammccall/src/llvm/tools/llc/llc.cpp:351:13
>   #22 0x00007f8f50d512b1 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x202b1)
>   #23 0x0000000000bd603a _start (bin/llc+0xbd603a)
>


The bug is fixed in https://reviews.llvm.org/D51908.
Thanks for your test case.


Repository:
  rL LLVM

https://reviews.llvm.org/D50495





More information about the llvm-commits mailing list