PR rtl-optimization/27616
commit8f353ea893836fad10df5e0d9ce69e816ed0e722
authorebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 4 Sep 2006 19:33:24 +0000 (4 19:33 +0000)
committerebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 4 Sep 2006 19:33:24 +0000 (4 19:33 +0000)
treece136ce4de60baf3887aab1aea174d9a6a8969d1
parent51ab7e353a3119ea190108e82857bdb7008b4eac
PR rtl-optimization/27616
* cse.c (table_size): New static variable.
(new_basic_block): Initialize it to 0.
(remove_from_table): Decrement it.
(insert): Increment it.
(fold_rtx_mem_1): New function, renamed from fold_rtx_mem.
(fold_rtx_mem): Enforce a cap on the recursion depth.  Call
fold_rtx_mem_1 if under the cap.
(fold_rtx) <RTX_COMM_ARITH>: In the associative case, delay a little
the lookup of the equivalent expression and test for equality of the
first operand of the equivalent expression before in turn looking up
an equivalent constant for the second operand.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@116683 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/cse.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/compile/20060904-1.c [new file with mode: 0644]