2013-10-30 Christian Bruel <christian.bruel@st.com>
commitb421555dca42d95ee58613902a517340f5ef0bf0
authorchrbr <chrbr@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 30 Oct 2013 12:35:27 +0000 (30 12:35 +0000)
committerchrbr <chrbr@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 30 Oct 2013 12:35:27 +0000 (30 12:35 +0000)
tree1cea31039fe84e59f896ec41ec6541d0a8e982ac
parent81705553ce864f3d9ed3ef1fe9655dbcf3d5d91d
2013-10-30  Christian Bruel  <christian.bruel@st.com>

* gcc/config/sh/sh-mem.cc (sh_expand_cmpnstr): New function.
(sh_expand_cmpstr): Handle known align and schedule improvements.
* gcc/config/sh/sh-protos.h (sh_expand_cmpstrn): Declare.
* gcc/config/sh/sh.md (cmpstrnsi): New pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@204206 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/sh/sh-mem.cc
gcc/config/sh/sh-protos.h
gcc/config/sh/sh.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/builtins/strncmp-2.c
gcc/testsuite/gcc.target/sh/cmpstr.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sh/cmpstrn.c [new file with mode: 0644]