On 03/26/2016 08:38 AM, Jake Hamby wrote:
Unfortunately, my previous patch that included a change to gcc/config/vax/vax.h
that increased FIRST_PSEUDO_REGISTER from 16 to 17 breaks the C++ exception
handling that I’d worked so hard to get right with the rest of the patch. I
believe I need to define DWARF_FRAME_REGISTERS to 16 in the same file to fix
the size of the array that libgcc/unwind-dw2.c creates. The i386 backend and
several others also define it their .h file for the same reason (compatibility
with hardcoded frame offsets).
Here’s the first part of the patch to vax.h that increases
FIRST_PSEUDO_REGISTER and also adds a definition of DWARF_FRAME_REGISTERS as
16, with suitable comment. I’m testing it now. I know that C++ exceptions were
working before I increased FIRST_PSEUDO_REGISTER to 17.
So do you consider this patch ready to officially submit to GCC? Or is
there something else you're waiting on or dependent upon?
jeff