[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