[fpc-devel] dwarf 2 warning CIE

Dimitrios Chr. Ioannidis d.ioannidis at nephelae.eu
Tue Feb 2 18:33:18 CET 2021


Hi,

On 2021-02-02 18:47, Christo Crause wrote:
> On Tue, Feb 2, 2021 at 12:28 PM Dimitrios Chr. Ioannidis via fpc-devel
> <fpc-devel at lists.freepascal.org> wrote:
>
>> Reading dwarf information with avr-embedded-objdump.exe --dwarf
>> returns
>> : "avr-embedded-objdump.exe: Warning: Invalid CIE pointer 0x00c80000
>> in
>> FDE at 0x000014"
>
> I get the same warning on Linux using avr-objdump (GNU objdump (GNU
> Binutils) 2.26.20160125), your test code and all of the dwarf debug
> options in the compiler.  Not sure if this is really a problem when
> debugging with gdb, I've managed to debug across units before. Do you
> have a reproducible problematic debug situation that can be tested?

  I checked with the dwarf 2.o specification and I read that "in FDE 
(Frame Description Entry) there is a CIE_pointer field which is a uword 
constant offset into the .debug_frame section that denotes the CIE that 
is associated with this FDE."


  AFAIU, both are used, among others of course, to provide virtual 
unwind information to debugger . But here there is a problem, IMO, the 
FDE has an CIE_id of fd39e538 but there is none CIE with that id. There 
is only one CIE with id ffffffff .


"dwarf_CIE_FDE_Bug.elf:     file format elf32-avr

Contents of the .debug_frame section:


00000000 0010 ffffffff CIE
   Version:               1
   Augmentation:          ""
   Code alignment factor: 1
   Data alignment factor: -4
   Return address column: 24

   DW_CFA_def_cfa: r32 ofs 2
   DW_CFA_offset_extended: r36 at cfa+0
   DW_CFA_nop

00000014 0000 00c80000 FDE cie=fd39e538 pc=0002..0002"


Of course I maybe be wrong and this is not a problem.

regards,

-- 
Dimitrios Chr. Ioannidis

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20210202/1c3a9bdd/attachment.htm>


More information about the fpc-devel mailing list