diff options
author | Hans-Peter Nilsson <hp@axis.com> | 2008-11-05 18:04:36 +0000 |
---|---|---|
committer | Hans-Peter Nilsson <hp@gcc.gnu.org> | 2008-11-05 18:04:36 +0000 |
commit | 5e41dd6f29493d6dd47fd53862cd9c546593fb9d (patch) | |
tree | 940bc0349e252569e2fb6d49d3c693f4fedde4a5 | |
parent | 5e9abf2ce4a4e1e380a1da8016eac24b22973dfd (diff) | |
download | gcc-5e41dd6f29493d6dd47fd53862cd9c546593fb9d.zip gcc-5e41dd6f29493d6dd47fd53862cd9c546593fb9d.tar.gz gcc-5e41dd6f29493d6dd47fd53862cd9c546593fb9d.tar.bz2 |
re PR target/38016 (-fno-ivopts exposes CRIS port bug, more with -fno-gcse)
PR target/38016
* config/cris/cris.c (cris_order_for_addsi3): Test for !REG_P, not
just MEM_P.
From-SVN: r141614
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/cris/cris.c | 9 |
2 files changed, 11 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5511750..433cdac 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2008-11-05 Hans-Peter Nilsson <hp@axis.com> + + PR target/38016 + * config/cris/cris.c (cris_order_for_addsi3): Test for !REG_P, not + just MEM_P. + 2008-11-05 Martin Jambor <mjambor@suse.cz> PR middle-end/37861 diff --git a/gcc/config/cris/cris.c b/gcc/config/cris/cris.c index 88d8999..75e2e18 100644 --- a/gcc/config/cris/cris.c +++ b/gcc/config/cris/cris.c @@ -3565,14 +3565,15 @@ cris_expand_pic_call_address (rtx *opp) } /* Make sure operands are in the right order for an addsi3 insn as - generated by a define_split. A MEM as the first operand isn't - recognized by addsi3 after reload. OPERANDS contains the operands, - with the first at OPERANDS[N] and the second at OPERANDS[N+1]. */ + generated by a define_split. Nothing but REG_P as the first + operand is recognized by addsi3 after reload. OPERANDS contains + the operands, with the first at OPERANDS[N] and the second at + OPERANDS[N+1]. */ void cris_order_for_addsi3 (rtx *operands, int n) { - if (MEM_P (operands[n])) + if (!REG_P (operands[n])) { rtx tem = operands[n]; operands[n] = operands[n + 1]; |