------- Comment #4 from rth at gcc dot gnu dot org  2005-10-20 08:35 -------
Well, the ideal fix is to make use of the dwarf3 DW_OP_call_frame_cfa
directive, and let the debugger get the CFA information from the ia64
unwind info.  Similarly for the arm eabi unwind info.

I'm not sure what a good short-term fix is.  Perhaps, as you suggest,
putting some code back for TARGET_UNWIND_INFO targets.

On the other hand, both ia64 and arm are ACCUMULATE_OUTGOING_ARGS targets,
which means that they don't *need* all that tracking info to find the CFA.
For any function that gcc generates, the CFA starts as SP+OFFSET1 and changes
exactly once to either SP+OFFSET2 or FP+OFFSET3.  Which means that we could 
fairly easily acquire this info (plus a label of the transition point) from
a target hook.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24444

Reply via email to