[Bug debug/54796] [4.8 Regression] Non-addressable stack parameter debug quality regression

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Oct 16 11:21:00 GMT 2012


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

--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-10-16 11:21:28 UTC ---
Author: jakub
Date: Tue Oct 16 11:21:20 2012
New Revision: 192494

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=192494
Log:
    PR debug/54796
    * rtl.h: Document jump flag on VALUE.
    * cselib.h (cselib_set_value_sp_based,
    cselib_sp_based_value_p): New prototypes.
    * alias.c (find_base_term): For cselib_sp_based_value_p
    return static_reg_base_value[STACK_POINTER_REGNUM].
    * cselib.c (SP_BASED_VALUE_P): Define.
    (cselib_set_value_sp_based, cselib_sp_based_value_p): New functions.
    * var-tracking.c (add_stores): Call cselib_set_value_sp_based
    for not yet preserved VALUEs of sp on sp assignments if
    hard_frame_pointer_adjustment != -1.
    (vt_initialize): When setting hard_frame_pointer_adjustment,
    disassociate sp from its previous value and call
    cselib_set_value_sp_based on a new VALUE created for sp.

    * gcc.dg/guality/pr54796.c: New test.

Added:
    trunk/gcc/testsuite/gcc.dg/guality/pr54796.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/alias.c
    trunk/gcc/cselib.c
    trunk/gcc/cselib.h
    trunk/gcc/rtl.h
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/var-tracking.c



More information about the Gcc-bugs mailing list