On 10/06/2015 08:02 PM, Steve Ellcey wrote:
If I remove that and I change Rule #16 to handle an AND with a register
I get odd looking .cfi stuff. The AND instruction (which is marked with
RTX_FRAME_RELATED) seems to generate these cfi_escape macros:
.cfi_escape 0x10,0x1f,0x2,0x8e,0x7c
.cfi_escape 0x10,0x1e,0x2,0x8e,0x78
.cfi_escape 0x10,0xc,0x2,0x8e,0x74
which are meaningless to me.
Possibly something generating a DW_CFA_expression, which then gets
expanded as .cfi_escape sequences. Have a look at reg_save, there's code
conditional on stack_realign that does that. Or put a breakpoint
anywhere in dwarf2cfi that makes a .cfi_escape to see where it's coming
from.
As HJ says, fix readelf first to help you dump the unwind info.
Bernd