summaryrefslogtreecommitdiffstats
path: root/toolchain/gcc/patches/4.3.3+cs/420-fix_pr26515.patch
blob: 24b37207264629ae0cf44ea11da09b18bed0c648 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
--- a/gcc/config/cris/cris.md
+++ b/gcc/config/cris/cris.md
@@ -4920,7 +4920,9 @@
   "REGNO (operands[2]) == REGNO (operands[0])
    && INTVAL (operands[3]) <= 65535 && INTVAL (operands[3]) >= 0
    && !CONST_OK_FOR_LETTER_P (INTVAL (operands[3]), 'I')
-   && !side_effects_p (operands[1])"
+   && !side_effects_p (operands[1])
+   && (!REG_P (operands[1])
+       || REGNO (operands[1]) <= CRIS_LAST_GENERAL_REGISTER)"
   ;; FIXME: CC0 valid except for M (i.e. CC_NOT_NEGATIVE).
   [(set (match_dup 0) (match_dup 4))
    (set (match_dup 5) (match_dup 6))]