re PR target/82260 ([x86] Unnecessary use of 8-bit registers with -Os. slightly...
authorJakub Jelinek <jakub@redhat.com>
Thu, 21 Sep 2017 07:27:54 +0000 (09:27 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 21 Sep 2017 07:27:54 +0000 (09:27 +0200)
commita4f65ca8cb3847ff62185f535f191a4e1e46fedf
tree862e490df59f4398ae9cef283d3da6cffe0b45a7
parentd3347cd287bf89aca78ec030763792d86bb47fbc
re PR target/82260 ([x86] Unnecessary use of 8-bit registers with -Os.  slightly slower and larger code)

PR target/82260
* config/i386/i386.md (*movqi_internal): Replace (=q,q) alternative
with (=Q,Q), (=R,R) and (=r,r) alternatives, only enable the
latter two for 64-bit, renumber alternatives, for -Os imov (=q,n)
alternative always use QI mode, for -Os imov (=R,R) alternative
always use SI mode, for imov (=Q,Q) or (=r,r) alternatives
ignore -Os.

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

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