Dwarf debug location list
majia gm
gmmajia@gmail.com
Sun Nov 28 08:22:00 GMT 2010
Hi, guys.
I'm working on a non-mainstream RISC machine. I found that the
CFA(Canonical Frame Address) of a function as follows, is record
errorly in a location list.
The origninal function is wrriten in C, and here's the objdump result.
prologue:
stw.w lr, [sp-], 4
sub sp, sp, #404
...
epilogue:
add sp, sp, #404
cmovub pc, lr
The CFA is discribed relatively to the stack pointer sp. But the
location list for CFA only noticed the adjustment of sp in the
prologue but ignored the one in the epilogue.
I'm trying to figure out how this happened. But I'm not familiar with GCC.
Could you give me some hints on how the location list of the CFA is generated?
Or is there any reference to the Dwarf generating machenism in GCC?
Thanks a lot.
Gmmajia
More information about the Gcc-help
mailing list