diff options
author | Jeffrey A Law <law@cygnus.com> | 1999-07-29 07:26:58 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1999-07-29 01:26:58 -0600 |
commit | e58f99c45044aa32ab42a9254810c0a9ce16ea86 (patch) | |
tree | 2e8c2eddded74fe6c10b1ee2e98a247c062cf2be | |
parent | 1b8ad134da972e9d151a068e4abfdfec883b0e9f (diff) | |
download | gcc-e58f99c45044aa32ab42a9254810c0a9ce16ea86.zip gcc-e58f99c45044aa32ab42a9254810c0a9ce16ea86.tar.gz gcc-e58f99c45044aa32ab42a9254810c0a9ce16ea86.tar.bz2 |
pa.md (indirect_jump): Remove mode from match_operand.
* pa.md (indirect_jump): Remove mode from match_operand. Verify
proper mode in the condition string.
(icacheflush, dcacheflush): Remove modes from match_operands.
From-SVN: r28332
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/pa/pa.md | 18 |
2 files changed, 13 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6fdd03c..851c94e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -5,6 +5,10 @@ Wed Jul 28 12:50:48 1999 Geoff Keating <geoffk@cygnus.com> Wed Jul 28 13:18:35 1999 Jeffrey A Law (law@cygnus.com) + * pa.md (indirect_jump): Remove mode from match_operand. Verify + proper mode in the condition string. + (icacheflush, dcacheflush): Remove modes from match_operands. + * pa.c (emit_move_sequence): Always convert scratch_reg to the proper mode before using it. diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md index 7fdbab03..a1d2939 100644 --- a/gcc/config/pa/pa.md +++ b/gcc/config/pa/pa.md @@ -4678,8 +4678,8 @@ ;;; Hope this is only within a function... (define_insn "indirect_jump" - [(set (pc) (match_operand:SI 0 "register_operand" "r"))] - "" + [(set (pc) (match_operand 0 "register_operand" "r"))] + "GET_MODE (operands[0]) == word_mode" "bv%* %%r0(%0)" [(set_attr "type" "branch") (set_attr "length" "4")]) @@ -5168,8 +5168,8 @@ (define_insn "dcacheflush" [(unspec_volatile [(const_int 1)] 0) - (use (mem:SI (match_operand:SI 0 "register_operand" "r"))) - (use (mem:SI (match_operand:SI 1 "register_operand" "r")))] + (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") @@ -5177,11 +5177,11 @@ (define_insn "icacheflush" [(unspec_volatile [(const_int 2)] 0) - (use (mem:SI (match_operand:SI 0 "register_operand" "r"))) - (use (mem:SI (match_operand:SI 1 "register_operand" "r"))) - (use (match_operand:SI 2 "register_operand" "r")) - (clobber (match_operand:SI 3 "register_operand" "=&r")) - (clobber (match_operand:SI 4 "register_operand" "=&r"))] + (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") |