This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: patch: fix unwinder to map dwarf regs to unwinder columns
On Tue, Mar 11, 2003 at 08:07:32AM -0800, Aldy Hernandez wrote:
> * doc/tm.texi (Frame Registers): Document DWARF_REG_TO_UNWIND_COLUMN.
>
> * unwind-dw2.c (DWARF_REG_TO_UNWIND_COLUMN): Define.
> (_Unwind_GetGR): Use DWARF_REG_TO_UNWIND_COLUMN.
> (_Unwind_SetGR): Same.
> (_Unwind_GetGRPtr): New.
> (_Unwind_SetGRPtr): New.
> (uw_update_context_1): Use accesor functions instead of accessing
> context->reg[] directly.
> (uw_install_context_1): Same.
> (execute_cfa_program): Same.
> (__frame_state_for): Same.
>
> * config/rs6000/rs6000.c (spe_synthesize_frame_save): Use 1200 as
> the synthetic register offset.
>
> * config/rs6000/rs6000.h (DWARF_REG_TO_UNWIND_COLUMN): New.
Ok.
> info_ptr->spe_64bit_regs_used = insn_chain_scanned;
Oh, I didn't notice before, but your code for insn_chain_scanned
here is wrong. Using a static variable means that you only scan
the first function in a translation unit. You need to put this
in struct machine_function instead.
r~