summaryrefslogtreecommitdiff
path: root/gcc/config/m32c/mov.md
diff options
context:
space:
mode:
authorDJ Delorie <dj@redhat.com>2005-08-15 20:31:39 -0400
committerDJ Delorie <dj@gcc.gnu.org>2005-08-15 20:31:39 -0400
commiteb5f0c07fccb756cbafb0ceaffa8e0527e20d674 (patch)
tree0f77842fd2ddbb172f87629271e74e13bc213815 /gcc/config/m32c/mov.md
parent7f91299bb493e4ab4d0692964adf94c590483cdc (diff)
downloadgcc-eb5f0c07fccb756cbafb0ceaffa8e0527e20d674.tar.gz
mov.md (movqi_op): Immediates can't be moved to the stack.
* config/m32c/mov.md (movqi_op): Immediates can't be moved to the stack. (movsi_splittable): Allow, but split, moves to the stack. * config/m32c/m32c.c (m32c_split_move): Always split moves to the stack. From-SVN: r103140
Diffstat (limited to 'gcc/config/m32c/mov.md')
-rw-r--r--gcc/config/m32c/mov.md8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/config/m32c/mov.md b/gcc/config/m32c/mov.md
index 2e18ea3c23e..e146bb6cc20 100644
--- a/gcc/config/m32c/mov.md
+++ b/gcc/config/m32c/mov.md
@@ -33,9 +33,9 @@
;; e.g. stdlib/efgcvt.c.
(define_insn "movqi_op"
[(set (match_operand:QI 0 "mra_qi_operand"
- "=Rqi*Rmm, <, RqiSd*Rmm, SdSs, Rqi*Rmm, Sd")
+ "=Rqi*Rmm, <, RqiSd*Rmm, SdSs, Rqi*Rmm, Sd")
(match_operand:QI 1 "mrai_qi_operand"
- "iRqi*Rmm, iRqiSd*Rmm, >, iRqi*Rmm, SdSs, i"))]
+ "iRqi*Rmm, iRqiSd*Rmm, >, Rqi*Rmm, SdSs, i"))]
"m32c_mov_ok (operands, QImode)"
"@
mov.b\t%1,%0
@@ -168,8 +168,8 @@
; All SI moves are split if TARGET_A16
(define_insn_and_split "movsi_splittable"
- [(set (match_operand:SI 0 "mras_operand" "=Rsi<*Rmm,RsiSd*Rmm")
- (match_operand:SI 1 "mrasi_operand" "iRsiSd*Rmm,iRsi>*Rmm"))]
+ [(set (match_operand:SI 0 "mras_operand" "=Rsi<*Rmm,RsiSd*Rmm,Ss")
+ (match_operand:SI 1 "mrasi_operand" "iRsiSd*Rmm,iRsi>*Rmm,Rsi*Rmm"))]
"TARGET_A16"
"#"
"TARGET_A16 && reload_completed"