From 40155239d684ae96712d34f3f4dcc88eef4fc99d Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 20 Nov 2012 09:34:43 +0100 Subject: re PR middle-end/54921 (wrong code with -Os -fno-omit-frame-pointer -fsched2-use-superblocks -fstack-protector -ftree-slp-vectorize) PR rtl-optimization/54921 * cselib.h (fp_setter_insn): New prototype. * cselib.c (fp_setter_insn): New function. (cselib_process_insn): If frame_pointer_needed, call cselib_invalidate_rtx (stack_pointer_rtx) after processing a frame pointer setter. * var-tracking.c (fp_setter): Removed. (vt_initialize): Use fp_setter_insn instead of fp_setter. * gcc.dg/pr54921.c: New test. From-SVN: r193647 --- gcc/cselib.h | 1 + 1 file changed, 1 insertion(+) (limited to 'gcc/cselib.h') diff --git a/gcc/cselib.h b/gcc/cselib.h index 95fdbf7..b717c95 100644 --- a/gcc/cselib.h +++ b/gcc/cselib.h @@ -78,6 +78,7 @@ extern void cselib_init (int); extern void cselib_clear_table (void); extern void cselib_finish (void); extern void cselib_process_insn (rtx); +extern bool fp_setter_insn (rtx); extern enum machine_mode cselib_reg_set_mode (const_rtx); extern int rtx_equal_for_cselib_p (rtx, rtx); extern int references_value_p (const_rtx, int); -- cgit v1.1