summaryrefslogtreecommitdiff
path: root/gcc/config/sh/predicates.md
diff options
context:
space:
mode:
authorKaz Kojima <kkojima@gcc.gnu.org>2011-06-08 23:13:27 +0000
committerKaz Kojima <kkojima@gcc.gnu.org>2011-06-08 23:13:27 +0000
commit409fed48aefff3103196cc2a209fa0d1830b4b2c (patch)
tree7bf3b1574b01a590664f7f462e9e6425656f4083 /gcc/config/sh/predicates.md
parent87c16a45d3694423105a154d90ee609dd8a9204c (diff)
downloadgcc-409fed48aefff3103196cc2a209fa0d1830b4b2c.tar.gz
re PR target/49305 (SH Target: internal compiler error: in reload_cse_simplify_operands, at postreload.c:403)
PR target/49305 * config/sh/predicates.md (general_movsrc_operand): Check mode for memory with indexed address for QI and HImode. (general_movdst_operand): Likewise. From-SVN: r174824
Diffstat (limited to 'gcc/config/sh/predicates.md')
-rw-r--r--gcc/config/sh/predicates.md2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/config/sh/predicates.md b/gcc/config/sh/predicates.md
index 20354588d99..3cf1cf574c6 100644
--- a/gcc/config/sh/predicates.md
+++ b/gcc/config/sh/predicates.md
@@ -395,6 +395,7 @@
}
if ((mode == QImode || mode == HImode)
+ && mode == GET_MODE (op)
&& (MEM_P (op)
|| (GET_CODE (op) == SUBREG && MEM_P (SUBREG_REG (op)))))
{
@@ -432,6 +433,7 @@
return 0;
if ((mode == QImode || mode == HImode)
+ && mode == GET_MODE (op)
&& (MEM_P (op)
|| (GET_CODE (op) == SUBREG && MEM_P (SUBREG_REG (op)))))
{