[Bug debug/48203] ICE in dwarf2out.c while building eglibc.

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Mar 29 00:05:00 GMT 2011


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

--- Comment #13 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-03-28 23:53:49 UTC ---
Author: jakub
Date: Mon Mar 28 23:53:46 2011
New Revision: 171640

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=171640
Log:
    PR debug/48203
    * cfgexpand.c (expand_debug_expr) <case SSA_NAME>: Only
    create ENTRY_VALUE if incoming or address of incoming's MEM
    is a hard REG.
    * dwarf2out.c (mem_loc_descriptor): Don't emit
    DW_OP_GNU_entry_value of DW_OP_fbreg.
    * var-tracking.c (vt_add_function_parameter): Ensure cselib_lookup
    on ENTRY_VALUE is able to find the canonical parameter VALUE.
    * cselib.c (rtx_equal_for_cselib_1) <case ENTRY_VALUE>: Use
    rtx_equal_p instead of rtx_equal_for_cselib_1 to compare
    ENTRY_VALUE_EXPs.
    (cselib_hash_rtx) <case ENTRY_VALUE>: If ENTRY_VALUE_EXP
    is a REG_P or MEM_P with REG_P address, compute hash directly
    instead of calling cselib_hash_rtx on ENTRY_VALUE_EXP.
    (preserve_only_constants): Don't clear VALUES forwaring
    ENTRY_VALUE to some other VALUE.

    * gcc.dg/pr48203.c: New test.

Added:
    trunk/gcc/testsuite/gcc.dg/pr48203.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/cfgexpand.c
    trunk/gcc/cselib.c
    trunk/gcc/dwarf2out.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/var-tracking.c



More information about the Gcc-bugs mailing list