From: olegendo Date: Sat, 4 Jun 2016 11:00:58 +0000 (+0000) Subject: gcc/ChangeLog X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3d3f5dc5ca848f5bf7eaf61b9254815791cfe6f0;p=thirdparty%2Fgcc.git 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237090 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bce140bef53a..3e11cb9e06c3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2016-06-04 Oleg Endo + + PR tree-optimization/52171 + * config/sh/sh.c (sh_use_by_pieces_infrastructure_p): Use + by_pieces_ninsns instead of move_by_pieces_ninsns. + 2016-06-04 Oleg Endo * config/sh/sh.c (sh_print_operand_address): Don't use hardcoded 'r0' diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index 74327aa7c7ec..0960a99fd2ce 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,