------- Comment #11 from jakub at gcc dot gnu dot org 2010-06-30 15:41 ------- Subject: Bug 44694
Author: jakub Date: Wed Jun 30 15:40:53 2010 New Revision: 161610 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=161610 Log: Backport from mainline 2010-06-30 Jakub Jelinek <ja...@redhat.com> PR debug/44694 * cselib.h (cselib_preserve_cfa_base_value): Add regno argument. * cselib.c (cfa_base_preserved_regno): New static variable. (cselib_reset_table): Don't reset cfa_base_preserved_regno instead of REGNO (cfa_base_preserved_val->locs->loc). (cselib_preserve_cfa_base_value): Add regno argument, set cfa_base_preserved_regno to it. (cselib_invalidate_regno): Allow removal of registers other than cfa_base_preserved_regno from cfa_base_preserved_val. (cselib_finish): Set cfa_base_preserved_regno to INVALID_REGNUM. * var-tracking.c (adjust_mems): Replace sp or hfp even outside of MEM addresses, if not on LHS. (reverse_op): Don't add reverse ops for cfa_base_rtx. (vt_init_cfa_base): Adjust cselib_preserve_cfa_base_value caller. Modified: branches/gcc-4_5-branch/gcc/ChangeLog branches/gcc-4_5-branch/gcc/cselib.c branches/gcc-4_5-branch/gcc/cselib.h branches/gcc-4_5-branch/gcc/var-tracking.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44694