From: John David Anglin Date: Mon, 22 Mar 2010 01:05:19 +0000 (+0000) Subject: re PR middle-end/42718 (FAIL: gcc.c-torture/compile/pr42559.c at -O1 and above) X-Git-Tag: releases/gcc-4.3.5~129 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b367d588c7fc37e8d4be3c3f007eb276447ad710;p=thirdparty%2Fgcc.git re PR middle-end/42718 (FAIL: gcc.c-torture/compile/pr42559.c at -O1 and above) PR middle-end/42718 * pa.md (movmemsi): Set align to one if zero. (movmemdi): Likewise. From-SVN: r157616 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3f8f5aee7f42..92e531f886b6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2010-03-21 John David Anglin + + PR middle-end/42718 + * pa.md (movmemsi): Set align to one if zero. + (movmemdi): Likewise. + 2010-03-18 H.J. Lu Backport from mainline: diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md index 0bd2e0a4748f..66a4f12225ef 100644 --- a/gcc/config/pa/pa.md +++ b/gcc/config/pa/pa.md @@ -3538,7 +3538,7 @@ size = INTVAL (operands[2]); align = INTVAL (operands[3]); - align = align > 4 ? 4 : align; + align = align > 4 ? 4 : (align ? align : 1); /* If size/alignment is large, then use the library routines. */ if (size / align > 16) @@ -3726,7 +3726,7 @@ size = INTVAL (operands[2]); align = INTVAL (operands[3]); - align = align > 8 ? 8 : align; + align = align > 8 ? 8 : (align ? align : 1); /* If size/alignment is large, then use the library routines. */ if (size / align > 16)