diff options
author | Jeff Law <law@redhat.com> | 2014-01-07 23:03:12 -0700 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2014-01-07 23:03:12 -0700 |
commit | 3c92da9027c684296d644deb2cf3e6316ed3c867 (patch) | |
tree | 9d6940a9da8de60753e9b31ec7d076e013a60547 /gcc/rtlhooks.c | |
parent | 04af8ab664b576f02652dc0034393b3a563b28f7 (diff) | |
download | gcc-3c92da9027c684296d644deb2cf3e6316ed3c867.zip gcc-3c92da9027c684296d644deb2cf3e6316ed3c867.tar.gz gcc-3c92da9027c684296d644deb2cf3e6316ed3c867.tar.bz2 |
re PR middle-end/53623 (sign extension is effectively split into two x86-64 instructions)
PR middle-end/53623
* ree.c (combine_set_extension): Handle case where source
and destination registers in an extension insn are different.
(combine_reaching_defs): Allow source and destination
registers in extension to be different under limited
circumstances.
(add_removable_extension): Remove restriction that the
source and destination registers in the extension are the
same.
(find_and_remove_re): Emit a copy from the extension's
destination to its source after the defining insn if
the source and destination registers are different.
PR middle-end/53623
* gcc.target/i386/pr53623.c: New test.
From-SVN: r206418
Diffstat (limited to 'gcc/rtlhooks.c')
0 files changed, 0 insertions, 0 deletions