re PR middle-end/54921 (wrong code with -Os -fno-omit-frame-pointer -fsched2-use...
authorJakub Jelinek <jakub@redhat.com>
Tue, 20 Nov 2012 08:34:43 +0000 (09:34 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Tue, 20 Nov 2012 08:34:43 +0000 (09:34 +0100)
commit40155239d684ae96712d34f3f4dcc88eef4fc99d
treeb8e399f48378d1d27ec4ce799592476990e6187c
parent4ced1d6de8b7ad914c4ea6fdb3121487d298c9e0
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/ChangeLog
gcc/cselib.c
gcc/cselib.h
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr54921.c [new file with mode: 0644]
gcc/var-tracking.c