dslinux/toolchain/8bit arm.md

amadeus dslinux_amadeus at user.in-berlin.de
Tue Aug 22 17:07:08 CEST 2006


Update of /cvsroot/dslinux/dslinux/toolchain/8bit
In directory antilope:/tmp/cvs-serv32053/toolchain/8bit

Modified Files:
	arm.md 
Log Message:
Improve code generator to make pepsiman happy ;-)

Index: arm.md
===================================================================
RCS file: /cvsroot/dslinux/dslinux/toolchain/8bit/arm.md,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- arm.md	21 Aug 2006 12:16:13 -0000	1.2
+++ arm.md	22 Aug 2006 15:07:06 -0000	1.3
@@ -5105,18 +5105,19 @@
    (set_attr "predicable" "yes")]
 )
 
-(define_insn "_arm_movqi_insn_const"
-  [(set (match_operand:QI 0 "register_operand" "=r")
-	(match_operand:QI 1 "const_int_operand" ""))]
+(define_insn "_arm_movqi_insn_noswp"
+  [(set (match_operand:QI 0 "register_operand" "=r,r,r")
+	(match_operand:QI 1 "general_operand"  "rI,K,m"))]
   "TARGET_ARM && TARGET_SWP_BYTE_WRITES
    && (   register_operand (operands[0], QImode))"
   "@
-   mov%?\\t%0, %1"
-  [(set_attr "type" "*")
+   mov%?\\t%0, %1
+   mvn%?\\t%0, #%B1
+   ldr%?b\\t%0, %1"
+  [(set_attr "type" "*,*,load1")
    (set_attr "predicable" "yes")]
 )
 
-
 ;; The earlyclobber is required by default_secondary_reload() in targhooks.c.
 ;; We may be asked to generate reg->stack moves from what was reg->reg moves.
 ;; This requires both a QImode scratch register to trash and a SImode scratch




More information about the dslinux-commit mailing list