Hi!

I hope this is the right mailing list to ask this kind of question.

I’m working on a edu/research compiler that has yet to be equipped with DWARF 
info. Unlike GCC/Clang/… it doesn’t have spill slots that are “constant” within 
a procedure, i.e. may procedure code like this:

_main:
  …
  je B
A:
  movl %edi,  -8(%rbp) # EDI spill slot: -8
  …
  jmp C
B:
  movl %eax,  -8(%rbp)
  movl %edi, -16(%rbp) # EDI spill slot: -16
  jmp C
C:
  …

Is this supported by the DWARF .cfi_offset directives at all, and if so, how? 
Generally speaking, what’s the “scope”/“validity period”/“life span” of such 
directive?

As an example, if C were to raise an exception and we’d use stack unwinding, 
how could the unwinder find the old/callee-saved EDI value?

Thanks
Jonas
_______________________________________________
Dwarf-Discuss mailing list
Dwarf-Discuss@lists.dwarfstd.org
http://lists.dwarfstd.org/listinfo.cgi/dwarf-discuss-dwarfstd.org

Reply via email to