Commit 9fe5bce9 by Jim Wilson

(movstrsi): Comment out.

From-SVN: r4220
parent 09aa6559
...@@ -1028,50 +1028,52 @@ ...@@ -1028,50 +1028,52 @@
[(set_attr "type" "store") [(set_attr "type" "store")
(set_attr "length" "2")]) (set_attr "length" "2")])
;; ??? We get better code without it. See output_block_move in sparc.c.
;; The definition of this insn does not really explain what it does, ;; The definition of this insn does not really explain what it does,
;; but it should suffice ;; but it should suffice
;; that anything generated as this insn will be recognized as one ;; that anything generated as this insn will be recognized as one
;; and that it will not successfully combine with anything. ;; and that it will not successfully combine with anything.
(define_expand "movstrsi" ;(define_expand "movstrsi"
[(parallel [(set (mem:BLK (match_operand:BLK 0 "general_operand" "")) ; [(parallel [(set (mem:BLK (match_operand:BLK 0 "general_operand" ""))
(mem:BLK (match_operand:BLK 1 "general_operand" ""))) ; (mem:BLK (match_operand:BLK 1 "general_operand" "")))
(use (match_operand:SI 2 "nonmemory_operand" "")) ; (use (match_operand:SI 2 "nonmemory_operand" ""))
(use (match_operand:SI 3 "immediate_operand" "")) ; (use (match_operand:SI 3 "immediate_operand" ""))
(clobber (match_dup 0)) ; (clobber (match_dup 0))
(clobber (match_dup 1)) ; (clobber (match_dup 1))
(clobber (match_scratch:SI 4 "")) ; (clobber (match_scratch:SI 4 ""))
(clobber (reg:SI 0)) ; (clobber (reg:SI 0))
(clobber (reg:SI 1))])] ; (clobber (reg:SI 1))])]
"" ; ""
" ; "
{ ;{
/* If the size isn't known, don't emit inline code. output_block_move ; /* If the size isn't known, don't emit inline code. output_block_move
would output code that's much slower than the library function. ; would output code that's much slower than the library function.
Also don't output code for large blocks. */ ; Also don't output code for large blocks. */
if (GET_CODE (operands[2]) != CONST_INT ; if (GET_CODE (operands[2]) != CONST_INT
|| GET_CODE (operands[3]) != CONST_INT ; || GET_CODE (operands[3]) != CONST_INT
|| INTVAL (operands[2]) / INTVAL (operands[3]) > 16) ; || INTVAL (operands[2]) / INTVAL (operands[3]) > 16)
FAIL; ; FAIL;
;
; operands[0] = copy_to_mode_reg (Pmode, XEXP (operands[0], 0));
; operands[1] = copy_to_mode_reg (Pmode, XEXP (operands[1], 0));
; operands[2] = force_not_mem (operands[2]);
;}")
operands[0] = copy_to_mode_reg (Pmode, XEXP (operands[0], 0)); ;(define_insn ""
operands[1] = copy_to_mode_reg (Pmode, XEXP (operands[1], 0)); ; [(set (mem:BLK (match_operand:SI 0 "register_operand" "+r"))
operands[2] = force_not_mem (operands[2]); ; (mem:BLK (match_operand:SI 1 "register_operand" "+r")))
}") ; (use (match_operand:SI 2 "nonmemory_operand" "rn"))
; (use (match_operand:SI 3 "immediate_operand" "i"))
(define_insn "" ; (clobber (match_dup 0))
[(set (mem:BLK (match_operand:SI 0 "register_operand" "+r")) ; (clobber (match_dup 1))
(mem:BLK (match_operand:SI 1 "register_operand" "+r"))) ; (clobber (match_scratch:SI 4 "=&r"))
(use (match_operand:SI 2 "nonmemory_operand" "rn")) ; (clobber (reg:SI 0))
(use (match_operand:SI 3 "immediate_operand" "i")) ; (clobber (reg:SI 1))]
(clobber (match_dup 0)) ; ""
(clobber (match_dup 1)) ; "* return output_block_move (operands);"
(clobber (match_scratch:SI 4 "=&r")) ; [(set_attr "type" "multi")
(clobber (reg:SI 0)) ; (set_attr "length" "6")])
(clobber (reg:SI 1))]
""
"* return output_block_move (operands);"
[(set_attr "type" "multi")
(set_attr "length" "6")])
;; Floating point move insns ;; Floating point move insns
......
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