------- Comment #5 from wilson at gcc dot gnu dot org 2006-02-16 02:26 ------- This is failing in code that Richard Henderson added. It is trying to compute the frame pointer to CFA offset by running register elimination on the arg pointer. The vax however has a hardware arg pointer, maintained by the call instruction, and hence does not do any register elimination. We then hit an assert because we still have an arg pointer after register elimination.
This problem can be avoided by defining the FRAME_POINTER_CFA_OFFSET macro. The value of this depends on how the vax call instruction works, and I don't happen to have docs for that. I also don't happen to have access to vax hardware. Assuming FP and SP have the same value on function entry, a value of zero should work here. This assumption be testing by verifying that the gdb testsuite works OK with this change. -- wilson at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |wilson at gcc dot gnu dot | |org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26015