[Bug other/48007] Unwind library doesn't work with UNITS_PER_WORD > sizeof (void *)

hjl at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Jun 7 17:33:00 GMT 2011


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

--- Comment #4 from hjl at gcc dot gnu.org <hjl at gcc dot gnu.org> 2011-06-07 17:33:08 UTC ---
Author: hjl
Date: Tue Jun  7 17:33:05 2011
New Revision: 174760

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=174760
Log:
Support UNIQUE_UNWIND_CONTEXT.

2011-04-09  H.J. Lu  <hongjiu.lu@intel.com>

    PR other/48007
    * unwind-dw2.c (UNIQUE_UNWIND_CONTEXT): New.
    (_Unwind_Context): If UNIQUE_UNWIND_CONTEXT is defined, add
    dwarf_reg_size_table and value, remove version and by_value.
    (EXTENDED_CONTEXT_BIT): Don't define if UNIQUE_UNWIND_CONTEXT
    is defined.
    (_Unwind_IsExtendedContext): Likewise.
    (_Unwind_GetGR): Support UNIQUE_UNWIND_CONTEXT.
    (_Unwind_SetGR): Likewise.
    (_Unwind_GetGRPtr): Likewise.
    (_Unwind_SetGRPtr): Likewise.
    (_Unwind_SetGRValue): Likewise.
    (_Unwind_GRByValue): Likewise.
    (__frame_state_for): Initialize dwarf_reg_size_table field if
    UNIQUE_UNWIND_CONTEXT is defined.
    (uw_install_context_1): Likewise.  Support UNIQUE_UNWIND_CONTEXT.

2011-04-09  H.J. Lu  <hongjiu.lu@intel.com>

    PR other/48007
    * unwind-dw2.c (_Unwind_Context): Revert saving call frame hard
    registers as _Unwind_Word.
    (_Unwind_GetGR): Don't get GR value as _Unwind_Word.
    (_Unwind_SetGR): Don't set GR value as _Unwind_Word.
    (_Unwind_SetGRValue): Likewise.
    (_Unwind_GetGRPtr): Don't cast return to "void *".
    (_Unwind_SetGRPtr): Don't cast pointer to _Unwind_Word.
    (uw_install_context_1): Don't cast pointer to "void *".

Added:
    branches/x32/gcc/ChangeLog.unwind
Modified:
    branches/x32/gcc/unwind-dw2.c



More information about the Gcc-bugs mailing list