Commit e42efef5 by Michael Hayes Committed by Michael Hayes

c4x.md (*movhi_stik): New pattern.

	* config/c4x/c4x.md (*movhi_stik): New pattern.
	(movhi): Allow some immediate constants to be directly
	stored in memory.

From-SVN: r25091
parent b2e9a2fd
Tue Feb 9 11:55:04 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
* config/c4x/c4x.md (*movhi_stik): New pattern.
(movhi): Allow some immediate constants to be directly
stored in memory.
Tue Feb 9 11:34:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz> Tue Feb 9 11:34:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
* config/c4x/c4x.md (all call patterns): Add constraints "Ur". * config/c4x/c4x.md (all call patterns): Add constraints "Ur".
......
...@@ -5370,6 +5370,13 @@ ...@@ -5370,6 +5370,13 @@
; TWO OPERAND LONG LONG INSTRUCTIONS ; TWO OPERAND LONG LONG INSTRUCTIONS
; ;
(define_insn "*movhi_stik"
[(set (match_operand:HI 0 "memory_operand" "=m")
(match_operand:HI 1 "stik_const_operand" "K"))]
"! TARGET_C3X"
"#"
[(set_attr "type" "multi")])
; We could load some constants using define_splits for the C30 ; We could load some constants using define_splits for the C30
; in the large memory model---these would emit shift and or insns. ; in the large memory model---these would emit shift and or insns.
(define_expand "movhi" (define_expand "movhi"
...@@ -5395,7 +5402,9 @@ ...@@ -5395,7 +5402,9 @@
[(set (match_operand:HI 0 "src_operand" "") [(set (match_operand:HI 0 "src_operand" "")
(match_operand:HI 1 "src_operand" ""))] (match_operand:HI 1 "src_operand" ""))]
"reload_completed "reload_completed
&& (reg_operand (operands[0], HImode) || reg_operand (operands[1], HImode))" && (reg_operand (operands[0], HImode)
|| reg_operand (operands[1], HImode)
|| stik_const_operand (operands[1], HImode))"
[(set (match_dup 2) (match_dup 3)) [(set (match_dup 2) (match_dup 3))
(set (match_dup 4) (match_dup 5))] (set (match_dup 4) (match_dup 5))]
"operands[2] = c4x_operand_subword (operands[0], 0, 1, HImode); "operands[2] = c4x_operand_subword (operands[0], 0, 1, HImode);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment