]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/ree.c
re PR tree-optimization/59747 (wrong code at -Os and above on x86_64-linux-gnu in...
authorJeff Law <law@redhat.com>
Wed, 15 Jan 2014 18:13:52 +0000 (11:13 -0700)
committerJeff Law <law@gcc.gnu.org>
Wed, 15 Jan 2014 18:13:52 +0000 (11:13 -0700)
commita6a2d67b0adf891b823b2b492a9d1cc98e09835a
treee0f2de4b26fbea16dedfb92ad4e491726101c7f8
parentaefe4056bbf86cd0065d8c6bfcf22dad15536b20
re PR tree-optimization/59747 (wrong code at -Os and above on x86_64-linux-gnu in 64-bit mode)

PR tree-optimization/59747
* ree.c (find_and_remove_re): Properly handle case where a second
eliminated extension requires widening a copy created for elimination
of a prior extension.
(combine_set_extension): Ensure that the number of hard regs needed
for a destination register does not change when we widen it.

PR tree-optimization/59747
* gcc.c-torture/execute/pr59747.c: New test.

From-SVN: r206638
gcc/ChangeLog
gcc/ree.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/pr59747.c [new file with mode: 0644]