diff options
author | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | 2010-03-22 01:00:30 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2010-03-22 01:00:30 +0000 |
commit | 19c1be3917d8295435bf605e2dcc260e93095fe0 (patch) | |
tree | 6d14152dc600b1d6a3aa30d838d99501a743f60d | |
parent | e0899a64f992dcfd22e419ad972cb4b49606a870 (diff) | |
download | gcc-19c1be3917d8295435bf605e2dcc260e93095fe0.zip gcc-19c1be3917d8295435bf605e2dcc260e93095fe0.tar.gz gcc-19c1be3917d8295435bf605e2dcc260e93095fe0.tar.bz2 |
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: r157614
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/pa/pa.md | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 06e2ffd..24e5e50 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2010-03-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> + + PR middle-end/42718 + * pa.md (movmemsi): Set align to one if zero. + (movmemdi): Likewise. + 2010-03-21 Richard Earnshaw <rearnsha@arm.com> PR target/42321 diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md index d10a40d..b620193 100644 --- a/gcc/config/pa/pa.md +++ b/gcc/config/pa/pa.md @@ -3097,7 +3097,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) @@ -3285,7 +3285,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) |