pa genrecog warnings
Richard Henderson
rth@cygnus.com
Thu Oct 14 19:03:00 GMT 1999
Congratulations on being the first port I've checked that
hasn't had output constraint problems.
The remaining half dozen warnings seem to be all from
shared 32/64 bit instructions. The following verifies
the proper mode (exceedingly unlikely to be wrong in
these cases, but...) and silences the warnings.
Ok?
r~
* pa.md (post_stw+1): Use pmode_register_operand.
(dcacheflush, icacheflush): Likewise.
Index: config/pa/pa.md
===================================================================
RCS file: /cvs/gcc/egcs/gcc/config/pa/pa.md,v
retrieving revision 1.54
diff -c -p -d -r1.54 pa.md
*** pa.md 1999/09/22 22:32:29 1.54
--- pa.md 1999/10/15 01:58:28
***************
*** 1572,1578 ****
;; Note since this pattern can be created at reload time (via movsi), all
;; the same rules for movsi apply here. (no new pseudos, no temporaries).
(define_insn ""
! [(set (match_operand 0 "register_operand" "=a")
(match_operand 1 "pic_label_operand" ""))]
""
"*
--- 1572,1578 ----
;; Note since this pattern can be created at reload time (via movsi), all
;; the same rules for movsi apply here. (no new pseudos, no temporaries).
(define_insn ""
! [(set (match_operand 0 "pmode_register_operand" "=a")
(match_operand 1 "pic_label_operand" ""))]
""
"*
***************
*** 5608,5615 ****
(define_insn "dcacheflush"
[(unspec_volatile [(const_int 1)] 0)
! (use (mem:SI (match_operand 0 "register_operand" "r")))
! (use (mem:SI (match_operand 1 "register_operand" "r")))]
""
"fdc 0(%0)\;fdc 0(%1)\;sync"
[(set_attr "type" "multi")
--- 5608,5615 ----
(define_insn "dcacheflush"
[(unspec_volatile [(const_int 1)] 0)
! (use (mem:SI (match_operand 0 "pmode_register_operand" "r")))
! (use (mem:SI (match_operand 1 "pmode_register_operand" "r")))]
""
"fdc 0(%0)\;fdc 0(%1)\;sync"
[(set_attr "type" "multi")
***************
*** 5617,5627 ****
(define_insn "icacheflush"
[(unspec_volatile [(const_int 2)] 0)
! (use (mem:SI (match_operand 0 "register_operand" "r")))
! (use (mem:SI (match_operand 1 "register_operand" "r")))
! (use (match_operand 2 "register_operand" "r"))
! (clobber (match_operand 3 "register_operand" "=&r"))
! (clobber (match_operand 4 "register_operand" "=&r"))]
""
"mfsp %%sr0,%4\;ldsid (%2),%3\;mtsp %3,%%sr0\;fic 0(%%sr0,%0)\;fic 0(%%sr0,%1)\;sync\;mtsp %4,%%sr0\;nop\;nop\;nop\;nop\;nop\;nop"
[(set_attr "type" "multi")
--- 5617,5627 ----
(define_insn "icacheflush"
[(unspec_volatile [(const_int 2)] 0)
! (use (mem:SI (match_operand 0 "pmode_register_operand" "r")))
! (use (mem:SI (match_operand 1 "pmode_register_operand" "r")))
! (use (match_operand 2 "pmode_register_operand" "r"))
! (clobber (match_operand 3 "pmode_register_operand" "=&r"))
! (clobber (match_operand 4 "pmode_register_operand" "=&r"))]
""
"mfsp %%sr0,%4\;ldsid (%2),%3\;mtsp %3,%%sr0\;fic 0(%%sr0,%0)\;fic 0(%%sr0,%1)\;sync\;mtsp %4,%%sr0\;nop\;nop\;nop\;nop\;nop\;nop"
[(set_attr "type" "multi")
More information about the Gcc-patches
mailing list