diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1993-01-03 07:09:52 -0500 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1993-01-03 07:09:52 -0500 |
commit | d0adc050ee3db38bace0b3c261e33d13fb82785e (patch) | |
tree | 9254ced91df2905113fb30d3cd452f3d390701e8 | |
parent | 0bb5b6bce095328bf4c6fe976e05252759b21d89 (diff) | |
download | gcc-d0adc050ee3db38bace0b3c261e33d13fb82785e.zip gcc-d0adc050ee3db38bace0b3c261e33d13fb82785e.tar.gz gcc-d0adc050ee3db38bace0b3c261e33d13fb82785e.tar.bz2 |
(movdi): Tests were in wrong order.
From-SVN: r3063
-rw-r--r-- | gcc/config/rs6000/rs6000.md | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index 15a2c51..5ad5084 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -4579,7 +4579,18 @@ "" "cror 0,0,0") -;; Define the subtract-one-and-jump insns. +;; Define the subtract-one-and-jump insns, starting with the template +;; so loop.c knows what to generate. + +(define_expand "decrement_and_branchsi" + [(set (pc) (if_then_else (ne (match_operand:SI 0 "register_operand" "c") + (const_int 1)) + (label_ref (match_operand 1 "" "")) + (pc))) + (set (match_dup 0) (plus:SI (match_dup 0) (const_int -1)))] + "" + "") + ;; We need to be able to do this for any operand, including MEM, or we ;; will cause reload to blow up since we don't allow output reloads on ;; JUMP_INSNs. @@ -4599,7 +4610,7 @@ # #") -;; Similar, but we can use GE since we have a REG_NOTES. +;; Similar, but we can use GE since we have a REG_NONNEG. (define_insn "" [(set (pc) (if_then_else (ge (match_operand:SI 1 "register_operand" "0,*r,*r") |