[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Inconsistent DWARF dump behavior between readelf and objdump
From: |
Joerg Sonnenberger |
Subject: |
Inconsistent DWARF dump behavior between readelf and objdump |
Date: |
Sun, 16 Jul 2017 18:37:09 +0200 |
User-agent: |
Mutt/1.8.3 (2017-05-23) |
Hello,
When assembling the following input with the binutils 2.27:
.text
.cfi_startproc
.cfi_adjust_cfa_offset 64
.skip 75040, 0
.cfi_adjust_cfa_offset 128
.cfi_endproc
I get the attached object file. readelf --debug-dump=frames gives:
00000018 00000018 0000001c FDE cie=00000000 pc=00000000..00012520
DW_CFA_advance_loc4: 75040 to 00012520
DW_CFA_def_cfa_offset: 192
...
and objdump -Wf gives:
00000018 0000000000000018 0000001c FDE cie=00000000
pc=0001252000000000..c00f252125200400
Augmentation data: 00
DW_CFA_nop
DW_CFA_nop
This ultimately breaks the check in GCC for working
.cfi_adjust_cfa_offset, as it tries to use objdump.
The readelf output agrees with llvm-objdump -dwarf=frames.
Same behavior can be observed with binutils 2.26.1.
Joerg
adjust-cfa.o
Description: Binary data
- Inconsistent DWARF dump behavior between readelf and objdump,
Joerg Sonnenberger <=