OSDN Git Service

gcc/
authorfroydnj <froydnj@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 12 Oct 2007 16:12:45 +0000 (16:12 +0000)
committerfroydnj <froydnj@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 12 Oct 2007 16:12:45 +0000 (16:12 +0000)
commit2bb6e5be9bf0b8ecb0bfd2e4440162f084edba47
tree5207ac97bd0057986f9f70bc84840f4e03f37c58
parentaadc318968d85743ea57b476bcf225be55d3c465
gcc/
PR 11001
* config/i386/i386.md (strmov): Check for esi and edi usage.
* config/i386/i386.c (decide_alg): Check whether we can use a
rep prefix and adjust algorithm choice accordingly.
(ix86_expand_strlen): Check for eax, ecx, and edi usage.

gcc/testsuite/
PR 11001
* gcc.target/i386/pr11001-strlen-1.c: New testcase.
* gcc.target/i386/pr11001-strlen-2.c: New testcase.
* gcc.target/i386/pr11001-strlen-3.c: New testcase.
* gcc.target/i386/pr11001-memset-1.c: New testcase.
* gcc.target/i386/pr11001-memset-2.c: New testcase.
* gcc.target/i386/pr11001-memset-3.c: New testcase.
* gcc.target/i386/pr11001-memcpy-1.c: New testcase.
* gcc.target/i386/pr11001-memcpy-2.c: New testcase.
* gcc.target/i386/pr11001-memcpy-3.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129265 138bc75d-0d04-0410-961f-82ee72b054a4
13 files changed:
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/config/i386/i386.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr11001-memcpy-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr11001-memcpy-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr11001-memcpy-3.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr11001-memset-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr11001-memset-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr11001-memset-3.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr11001-strlen-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr11001-strlen-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr11001-strlen-3.c [new file with mode: 0644]