[llvm-bugs] [Bug 24686] New: PowerPC unimplemented relocation assertion

via llvm-bugs llvm-bugs at lists.llvm.org
Wed Sep 2 19:09:02 PDT 2015


https://llvm.org/bugs/show_bug.cgi?id=24686

            Bug ID: 24686
           Summary: PowerPC unimplemented relocation assertion
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: Backend: PowerPC
          Assignee: unassignedbugs at nondot.org
          Reporter: anton at samba.org
                CC: llvm-bugs at lists.llvm.org
    Classification: Unclassified

I hit this when cutting down a testcase for another issue:

# cat test.s

_stext:
ld %r5, p_end - _stext(%r5)

# clang -c tt.s

Unimplemented
UNREACHABLE executed at
/home/anton/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp:79!

(gdb) backtrace 
#0  __GI_abort () at abort.c:51
#1  0x000000001201e64c in llvm::llvm_unreachable_internal (
    msg=0x153d3330 "Unimplemented", 
    file=0x153d32d0
"/home/anton/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp",
line=79) at /home/anton/llvm/lib/Support/ErrorHandling.cpp:117
#2  0x000000001103c228 in (anonymous
namespace)::PPCELFObjectWriter::GetRelocType (this=0x16bb3260, Target=...,
Fixup=..., IsPCRel=true)
    at
/home/anton/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp:79
#3  0x0000000011ccf2bc in (anonymous namespace)::ELFObjectWriter::GetRelocType
    (this=0x16bb3280, Target=..., Fixup=..., IsPCRel=true)
    at /home/anton/llvm/lib/MC/ELFObjectWriter.cpp:131
#4  0x0000000011cd0ffc in (anonymous
namespace)::ELFObjectWriter::recordRelocation (this=0x16bb3280, Asm=...,
Layout=..., Fragment=0x16bb7660, Fixup=..., 
    Target=..., IsPCRel=@0x3fffffffc79f: true, FixedValue=@0x3fffffffc7a0: 0)
    at /home/anton/llvm/lib/MC/ELFObjectWriter.cpp:677
#5  0x0000000011d01558 in llvm::MCAssembler::handleFixup (this=0x16bb3440, 
    Layout=..., F=..., Fixup=...)
    at /home/anton/llvm/lib/MC/MCAssembler.cpp:849
#6  0x0000000011d01c58 in llvm::MCAssembler::layout (this=0x16bb3440, 
    Layout=...) at /home/anton/llvm/lib/MC/MCAssembler.cpp:922
#7  0x0000000011d01dc8 in llvm::MCAssembler::Finish (this=0x16bb3440)
    at /home/anton/llvm/lib/MC/MCAssembler.cpp:933
#8  0x0000000011d59c80 in llvm::MCObjectStreamer::FinishImpl (this=0x16bb30c0)
    at /home/anton/llvm/lib/MC/MCObjectStreamer.cpp:460
#9  0x0000000011d3a5b8 in llvm::MCELFStreamer::FinishImpl (this=0x16bb30c0)
    at /home/anton/llvm/lib/MC/MCELFStreamer.cpp:658
#10 0x0000000011d65ba4 in llvm::MCStreamer::Finish (this=0x16bb30c0)
    at /home/anton/llvm/lib/MC/MCStreamer.cpp:595
#11 0x0000000011d8b2fc in (anonymous namespace)::AsmParser::Run (
    this=0x16bb49f0, NoInitialTextSection=false, NoFinalize=false)
    at /home/anton/llvm/lib/MC/MCParser/AsmParser.cpp:705
#12 0x0000000010e63b88 in ExecuteAssembler (Opts=..., Diags=...)
    at /home/anton/llvm/tools/clang/tools/driver/cc1as_main.cpp:406
#13 0x0000000010e643c0 in cc1as_main (Argv=..., 
    Argv0=0x3ffffffff66f "/home/anton/llvm.install/bin/clang-3.8", 
    MainAddr=0x10e41440 <GetExecutablePath[abi:cxx11](char const*, bool)>)
    at /home/anton/llvm/tools/clang/tools/driver/cc1as_main.cpp:491
#14 0x0000000010e432a0 in ExecuteCC1Tool (argv=..., Tool=...)
    at /home/anton/llvm/tools/clang/tools/driver/driver.cpp:382
#15 0x0000000010e43910 in main (argc_=19, argv_=0x3ffffffff348)
    at /home/anton/llvm/tools/clang/tools/driver/driver.cpp:443

Looks the relocation is PPC::fixup_ppc_half16ds. This should fail, but it would
be nice if it failed with an error message instead of a compiler ICE.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150903/3581ada8/attachment.html>


More information about the llvm-bugs mailing list