pa.md (icacheflush): Reorder operands to make match_scratch operand last.

* pa.md (icacheflush): Reorder operands to make match_scratch operand
	last.
	* pa.h (INITIALIZE_TRAMPOLINE): Remove unnecessary scratch argument
	from calls to gen_icacheflush.

From-SVN: r79029
This commit is contained in:
John David Anglin 2004-03-06 19:27:52 +00:00 committed by John David Anglin
parent 0f15adbd84
commit 7a9a5a4441
3 changed files with 12 additions and 8 deletions

View File

@ -1,3 +1,10 @@
2004-03-06 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* pa.md (icacheflush): Reorder operands to make match_scratch operand
last.
* pa.h (INITIALIZE_TRAMPOLINE): Remove unnecessary scratch argument
from calls to gen_icacheflush.
2004-03-06 Richard Henderson <rth@redhat.com>
* config/alpha/alpha.h (MASK_LONG_DOUBLE_128): New.

View File

@ -1095,7 +1095,6 @@ extern int may_call_alloca;
emit_move_insn (line_length, GEN_INT (MIN_CACHELINE_SIZE)); \
emit_insn (gen_dcacheflush (start_addr, end_addr, line_length)); \
emit_insn (gen_icacheflush (start_addr, end_addr, line_length, \
gen_reg_rtx (Pmode), \
gen_reg_rtx (Pmode), \
gen_reg_rtx (Pmode))); \
} \
@ -1128,7 +1127,6 @@ extern int may_call_alloca;
emit_move_insn (line_length, GEN_INT (MIN_CACHELINE_SIZE)); \
emit_insn (gen_dcacheflush (start_addr, end_addr, line_length)); \
emit_insn (gen_icacheflush (start_addr, end_addr, line_length, \
gen_reg_rtx (Pmode), \
gen_reg_rtx (Pmode), \
gen_reg_rtx (Pmode))); \
} \

View File

@ -8858,8 +8858,7 @@ add,l %2,%3,%3\;bv,n %%r0(%3)"
;; Operand 0 contains the start address.
;; Operand 1 contains the end address.
;; Operand 2 contains the line length to use.
;; Operand 3 contains the start address (clobbered).
;; Operands 4 and 5 (icacheflush) are clobbered scratch registers.
;; Operands 3 and 4 (icacheflush) are clobbered scratch registers.
(define_insn "dcacheflush"
[(const_int 1)
(unspec_volatile [(mem:BLK (scratch))] 0)
@ -8884,16 +8883,16 @@ add,l %2,%3,%3\;bv,n %%r0(%3)"
(use (match_operand 0 "pmode_register_operand" "r"))
(use (match_operand 1 "pmode_register_operand" "r"))
(use (match_operand 2 "pmode_register_operand" "r"))
(clobber (match_scratch 3 "=&0"))
(clobber (match_operand 3 "pmode_register_operand" "=&r"))
(clobber (match_operand 4 "pmode_register_operand" "=&r"))
(clobber (match_operand 5 "pmode_register_operand" "=&r"))]
(clobber (match_scratch 5 "=&0"))]
""
"*
{
if (TARGET_64BIT)
return \"mfsp %%sr0,%5\;ldsid (%3),%4\;mtsp %4,%%sr0\;cmpb,*<<=,n %3,%1,.\;fic,m %2(%%sr0,%3)\;sync\;mtsp %5,%%sr0\;nop\;nop\;nop\;nop\;nop\;nop\";
return \"mfsp %%sr0,%4\;ldsid (%5),%3\;mtsp %3,%%sr0\;cmpb,*<<=,n %5,%1,.\;fic,m %2(%%sr0,%5)\;sync\;mtsp %4,%%sr0\;nop\;nop\;nop\;nop\;nop\;nop\";
else
return \"mfsp %%sr0,%5\;ldsid (%3),%4\;mtsp %4,%%sr0\;cmpb,<<=,n %3,%1,.\;fic,m %2(%%sr0,%3)\;sync\;mtsp %5,%%sr0\;nop\;nop\;nop\;nop\;nop\;nop\";
return \"mfsp %%sr0,%4\;ldsid (%5),%3\;mtsp %3,%%sr0\;cmpb,<<=,n %5,%1,.\;fic,m %2(%%sr0,%5)\;sync\;mtsp %4,%%sr0\;nop\;nop\;nop\;nop\;nop\;nop\";
}"
[(set_attr "type" "multi")
(set_attr "length" "52")])