aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/sh
diff options
context:
space:
mode:
authorOleg Endo <olegendo@gcc.gnu.org>2016-06-04 11:00:58 +0000
committerOleg Endo <olegendo@gcc.gnu.org>2016-06-04 11:00:58 +0000
commit56812845490199b04123d9faf55cc2b338e6dfb9 (patch)
tree6ed1b2b183108b7771ffa02ad42c3c13b9c3ab36 /gcc/config/sh
parent909a11ad43c91acda1b74de1a81a67bf3dbe751d (diff)
downloadgcc-56812845490199b04123d9faf55cc2b338e6dfb9.zip
gcc-56812845490199b04123d9faf55cc2b338e6dfb9.tar.gz
gcc-56812845490199b04123d9faf55cc2b338e6dfb9.tar.bz2
re PR tree-optimization/52171 (memcmp/strcmp/strncmp can be optimized when the result is tested for [in]equality with 0)
gcc/ChangeLog PR tree-optimization/52171 * config/sh/sh.c (sh_use_by_pieces_infrastructure_p): Use by_pieces_ninsns instead of move_by_pieces_ninsns. From-SVN: r237090
Diffstat (limited to 'gcc/config/sh')
-rw-r--r--gcc/config/sh/sh.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 74327aa..0960a99 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -12506,11 +12506,11 @@ sh_use_by_pieces_infrastructure_p (unsigned HOST_WIDE_INT size,
switch (op)
{
case MOVE_BY_PIECES:
- return move_by_pieces_ninsns (size, align, MOVE_MAX_PIECES + 1)
+ return by_pieces_ninsns (size, align, MOVE_MAX_PIECES + 1, op)
< (!speed_p ? 2 : (align >= 32) ? 16 : 2);
case STORE_BY_PIECES:
case SET_BY_PIECES:
- return move_by_pieces_ninsns (size, align, STORE_MAX_PIECES + 1)
+ return by_pieces_ninsns (size, align, STORE_MAX_PIECES + 1, op)
< (!speed_p ? 2 : (align >= 32) ? 16 : 2);
default:
return default_use_by_pieces_infrastructure_p (size, align,