[llvm] r205456 - Add back an assert that was lost in the ELFObjectFile.h split.

Rafael EspĂ­ndola rafael.espindola at gmail.com
Fri Aug 15 12:24:40 PDT 2014


Can you attach a.out?

On 15 August 2014 15:20, Ed Maste <emaste at freebsd.org> wrote:
> On 2 April 2014 16:00, Rafael Espindola <rafael.espindola at gmail.com> wrote:
>> Author: rafael
>> Date: Wed Apr  2 15:00:33 2014
>> New Revision: 205456
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=205456&view=rev
>> Log:
>> Add back an assert that was lost in the ELFObjectFile.h split.
>
> llvm-objdump asserts when this is restored:
>
> feynman% bin/llvm-objdump -r a.out
>
> a.out:  file format ELF64-x86-64
>
> RELOCATION RECORDS FOR [.rela.plt]:
> Assertion failed: (EF.getHeader()->e_type == ELF::ET_REL && "Only
> relocatable object files have relocation offsets"), function
> getRelocationOffset, file ../include/llvm/Object/ELFObjectFile.h, line
> 599.
> Stack dump:
> 0.      Program arguments: bin/llvm-objdump -r a.out
> zsh: abort (core dumped)  bin/llvm-objdump -r a.out
>
>     frame #2: 0x0000000802644831
> libc.so.7`__assert(func=<unavailable>, file=<unavailable>,
> line=<unavailable>, failedexpr=<unavailable>) + 81 at assert.c:54
>     frame #3: 0x000000000084c1cf
> llvm-objdump`llvm::object::ELFObjectFile<llvm::object::ELFType<(this=0x000000080303b1c0,
> Rel=DataRefImpl at 0x00007fffffffdac8, Result=0x00007fffffffdcb8)1,
> 2ul, true> >::getRelocationOffset(llvm::object::DataRefImpl, unsigned
> long&) const + 111 at ELFObjectFile.h:598
>     frame #4: 0x000000000042301f
> llvm-objdump`llvm::object::RelocationRef::getOffset(this=0x00007fffffffdce0,
> Result=0x00007fffffffdcb8) const + 47 at ObjectFile.h:485
>     frame #5: 0x000000000041edad
> llvm-objdump`PrintRelocations(Obj=0x000000080303b1c0) + 813 at
> llvm-objdump.cpp:588
>     frame #6: 0x0000000000419385
> llvm-objdump`DumpObject(o=0x000000080303b1c0) + 309 at
> llvm-objdump.cpp:848
>     frame #7: 0x0000000000418d4b llvm-objdump`DumpInput(file=(Data =
> "a.out", Length = 5)) + 843 at llvm-objdump.cpp:905



More information about the llvm-commits mailing list