From 3ba95fd3aafb182df5146ac1806423851c3adb37 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Sat, 7 Dec 1996 18:53:35 -0500 Subject: [PATCH] (movhi pattern): Fixed MEM to MEM move problem. From-SVN: r13246 --- gcc/config/1750a/1750a.md | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/gcc/config/1750a/1750a.md b/gcc/config/1750a/1750a.md index 6cb9b8d82cc..2f4e75bfb49 100644 --- a/gcc/config/1750a/1750a.md +++ b/gcc/config/1750a/1750a.md @@ -431,15 +431,29 @@ } ") -(define_insn "movhi" +;; The movhi pattern. + +(define_insn "" [(set (match_operand:HI 0 "general_operand" "=r,r,m") (match_operand:HI 1 "general_operand" "r,m,r"))] - "" + "register_operand (operands[0], HImode) || + register_operand (operands[1], HImode)" "@ dlr r%0,r%1 dl r%0,%1 dst r%1,%0 ") +(define_expand "movhi" + [(set (match_operand:HI 0 "general_operand" "=g") + (match_operand:HI 1 "general_operand" "g"))] + "" + " + { + if (GET_CODE(operands[0]) == MEM && + GET_CODE(operands[1]) == MEM) + operands[1] = force_reg (HImode, operands[1]); + }") + ;; Single-Float moves are similar to HImode moves -- 2.30.2