[llvm-dev] Debug symbols are missing in elf
David Blaikie via llvm-dev
llvm-dev at lists.llvm.org
Sat Apr 18 09:33:18 PDT 2020
On Sat, Apr 18, 2020 at 3:02 AM Nagaraju Mekala via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> Hello All,
>
> I was trying to add Microblaze target to LLVM backend. I was able to
> generate object file with relocations. and debug symbols.
>
> When I try to link this object file with microblaze GCC linker I am
> getting below errors and debug symbols are missing in it.
>
> mb-objdump: DWARF error: found dwarf version '15877', this reader only
> handles version 2, 3, 4 and 5 information
> mb--objdump: DWARF error: found dwarf version '3328', this reader only
> handles version 2, 3, 4 and 5 information
> mb--objdump: DWARF error: found dwarf version '1280', this reader only
> handles version 2, 3, 4 and 5 information
>
> Any idea when does the above errors will come?
> The llvm generated object file has debug symbols,
When you say "has debug symbols" what do you mean? What tools have you used
to observe these symbols/information?
> where as elf doesn't have.
>
I take it you mean the linked executable? (the "ELF" file format is used
for both the object files and the linked executable)
> I tried modifying MCTarget layer a lot but not able to find the root-cause.
> Any clue is much appreciated.
>
> ex:
> hello.c
> int main()
> {
> printf("Hello World\n\r");
> printf("Successfully ran Hello World application");
> return 0;
> }
>
> hello.o objdump:
> int main()
> {
> 0: 10a00000 addk r5, r0, r0
> 4: f8a1002c swi r5, r1, 44
>
> printf("Hello World\n\r");
> 8: b0000000 imm 0
> 8: R_MICROBLAZE_64 .rodata.str1.1
> c: a0c00000 ori r6, r0, 0
> 10: f8a10028 swi r5, r1, 40
> 14: b0000000 imm 0
> 14: R_MICROBLAZE_64_PCREL printf
> 18: b9f40000 brlid r15, 0
> 1c: 10a60000 addk r5, r6, r0
> printf("Successfully ran Hello World application");
> 20: b0000000 imm 0
> 20: R_MICROBLAZE_64 .rodata.str1.1+0xe
> 24: a0a00000 ori r5, r0, 0
> 28: b0000000 imm 0
> 28: R_MICROBLAZE_64_PCREL printf
> 2c: b9f40000 brlid r15, 0
> 30: f8610024 swi r3, r1, 36
> return 0;
> 34: e8a10028 lwi r5, r1, 40
> 38: f8610020 swi r3, r1, 32
> 3c: 10650000 addk r3, r5, r0
> 40: b60f0008 rtsd r15, 8
> 44: 80000000 or r0, r0, r0
> ....
> ...
>
> hello.elf objdump
> 8000021c <main>:
> 8000021c: 10a00000 addk r5, r0, r0
> 80000220: f8a1002c swi r5, r1, 44
> 80000224: b0008000 imm -32768
> 80000228: a0c0f418 ori r6, r0, -3048
> 8000022c: f8a10028 swi r5, r1, 40
> 80000230: b9f400ec brlid r15, 236
> 80000234: 10a60000 addk r5, r6, r0
> 80000238: b0008000 imm -32768
> 8000023c: a0a0f426 ori r5, r0, -3034
> 80000240: b9f400dc brlid r15, 220
> 80000244: f8610024 swi r3, r1, 36
> 80000248: e8a10028 lwi r5, r1, 40
> 8000024c: f8610020 swi r3, r1, 32
> 80000250: 10650000 addk r3, r5, r0
> 80000254: b60f0008 rtsd r15, 8
> 80000258: 80000000 or r0, r0, r0
>
> Thanks in Advance,
> Nagaraju
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200418/98064051/attachment.html>
More information about the llvm-dev
mailing list