i386.i386.md (*zero_extendsidi2): Do not penalize non-interunit SSE move alternatives...
authorUros Bizjak <ubizjak@gmail.com>
Mon, 15 May 2017 19:04:35 +0000 (21:04 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Mon, 15 May 2017 19:04:35 +0000 (21:04 +0200)
commitf108770a8969f0a41463437208a62f9044810c49
tree96a3db91e9aaf90260edf48240bc63ad32d1a095
parente30ce0a36c89794543381b3699cc23011af4e85c
i386.i386.md (*zero_extendsidi2): Do not penalize non-interunit SSE move alternatives with '?'.

* config/i386.i386.md (*zero_extendsidi2): Do not penalize
non-interunit SSE move alternatives with '?'.
(zero-extendsidi peephole2): New peephole to skip intermediate
general register in SSE zero-extend sequence.

testsuite/ChangeLog:

* gcc.target/i386/pr80425-1.c: New test.
* gcc.target/i386/pr80425-2.c: Ditto.

From-SVN: r248070
gcc/ChangeLog
gcc/config/i386/i386.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr80425-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr80425-2.c [new file with mode: 0644]