OSDN Git Service

* config/rs6000/rs6000.md: (attr "type"): Add fast_compare.
authordje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 20 Feb 2003 19:31:30 +0000 (19:31 +0000)
committerdje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 20 Feb 2003 19:31:30 +0000 (19:31 +0000)
        (add.,subf.,neg.): Change attribute to fast_compare.
        All DFA descriptions updated.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@63175 138bc75d-0d04-0410-961f-82ee72b054a4

12 files changed:
gcc/ChangeLog
gcc/config/rs6000/40x.md
gcc/config/rs6000/603.md
gcc/config/rs6000/6xx.md
gcc/config/rs6000/7450.md
gcc/config/rs6000/7xx.md
gcc/config/rs6000/mpc.md
gcc/config/rs6000/power4.md
gcc/config/rs6000/rios1.md
gcc/config/rs6000/rios2.md
gcc/config/rs6000/rs6000.md
gcc/config/rs6000/rs64.md

index 9a3464e..98fce0a 100644 (file)
@@ -1,3 +1,9 @@
+2003-02-20  David Edelsohn  <edelsohn@gnu.org>
+
+       * config/rs6000/rs6000.md: (attr "type"): Add fast_compare.
+       (add.,subf.,neg.): Change attribute to fast_compare.
+       All DFA descriptions updated.
+
 2003-02-20  Nathan Sidwell  <nathan@codesourcery.com>
 
        Change base class access representation.
index 224b61e..989cbcd 100644 (file)
@@ -41,7 +41,7 @@
   "iu_40x")
 
 (define_insn_reservation "ppc403-compare" 3
-  (and (eq_attr "type" "cmp,compare,delayed_compare")
+  (and (eq_attr "type" "cmp,fast_compare,compare,delayed_compare")
        (eq_attr "cpu" "ppc403,ppc405"))
   "iu_40x,nothing,bpu_40x")
 
index 220d0e2..c17593a 100644 (file)
@@ -75,7 +75,7 @@
   "iu_603*37")
 
 (define_insn_reservation "ppc603-compare" 3
-  (and (eq_attr "type" "cmp,compare,delayed_compare")
+  (and (eq_attr "type" "cmp,fast_compare,compare,delayed_compare")
        (eq_attr "cpu" "ppc603"))
   "iu_603,nothing,bpu_603")
 
index 1792653..cb79006 100644 (file)
   "mciu_6xx*36")
 
 (define_insn_reservation "ppc604-compare" 3
-  (and (eq_attr "type" "cmp,compare,delayed_compare")
+  (and (eq_attr "type" "cmp,fast_compare,compare,delayed_compare")
        (eq_attr "cpu" "ppc604,ppc604e,ppc620,ppc630"))
   "(iu1_6xx|iu2_6xx)")
 
index b7a1d28..1e41ca1 100644 (file)
@@ -84,7 +84,7 @@
   "ppc7450_du,mciu_7450*23")
 
 (define_insn_reservation "ppc7450-compare" 2
-  (and (eq_attr "type" "cmp,compare,delayed_compare")
+  (and (eq_attr "type" "cmp,fast_compare,compare,delayed_compare")
        (eq_attr "cpu" "ppc7450"))
   "ppc7450_du,(iu1_7450|iu2_7450|iu3_7450)")
 
index 8a5c1a7..213fa73 100644 (file)
@@ -84,7 +84,7 @@
   "ppc750_du,iu1_7xx*19")
 
 (define_insn_reservation "ppc750-compare" 2
-  (and (eq_attr "type" "cmp,compare,delayed_compare")
+  (and (eq_attr "type" "cmp,fast_compare,compare,delayed_compare")
        (eq_attr "cpu" "ppc750,ppc7400"))
   "ppc750_du,(iu1_7xx|iu2_7xx)")
 
index fc6e252..07426f5 100644 (file)
@@ -58,7 +58,7 @@
   "mciu_mpc*6")
 
 (define_insn_reservation "mpccore-compare" 3
-  (and (eq_attr "type" "cmp,compare,delayed_compare")
+  (and (eq_attr "type" "cmp,fast_compare,compare,delayed_compare")
        (eq_attr "cpu" "mpccore"))
   "iu_mpc,nothing,bpu_mpc")
 
index 87e5ef4..73a7985 100644 (file)
   "iq_power4")
 
 (define_insn_reservation "power4-cmp" 3
-  (and (eq_attr "type" "cmp")
+  (and (eq_attr "type" "cmp,fast_compare")
        (eq_attr "cpu" "power4"))
   "iq_power4")
 
-(define_insn_reservation "power4-compare" 3
+(define_insn_reservation "power4-compare" 4
   (and (eq_attr "type" "compare,delayed_compare")
        (eq_attr "cpu" "power4"))
   "((du1_power4+du2_power4),iu1_power4,iu2_power4)\
index 239d387..d55d436 100644 (file)
@@ -88,7 +88,7 @@
 ; compare executes on integer unit, but feeds insns which
 ; execute on the branch unit.
 (define_insn_reservation "rios1-compare" 4
-  (and (eq_attr "type" "cmp,compare")
+  (and (eq_attr "type" "cmp,fast_compare,compare")
        (eq_attr "cpu" "rios1"))
   "iu_rios1,nothing*2,bpu_rios1")
 
index be19251..74f5581 100644 (file)
@@ -56,7 +56,7 @@
 ; compare executes on integer unit, but feeds insns which
 ; execute on the branch unit.
 (define_insn_reservation "rios2-compare" 3
-  (and (eq_attr "type" "cmp,compare,delayed_compare")
+  (and (eq_attr "type" "cmp,fast_compare,compare,delayed_compare")
        (eq_attr "cpu" "rios2"))
   "(iu1_rios2|iu2_rios2),nothing,bpu_rios2")
 
index 76ad8df..d60b9ac 100644 (file)
@@ -39,7 +39,7 @@
 \f
 ;; Define an insn type attribute.  This is used in function unit delay
 ;; computations.
-(define_attr "type" "integer,load,load_ext,load_ext_u,load_ext_ux,load_ux,load_u,store,store_ux,store_u,fpload,fpload_ux,fpload_u,fpstore,fpstore_ux,fpstore_u,vecload,vecstore,imul,imul2,imul3,lmul,idiv,ldiv,branch,cmp,compare,delayed_compare,fpcompare,cr_logical,delayed_cr,mfcr,mtcr,mtjmpr,fp,dmul,sdiv,ddiv,ssqrt,dsqrt,jmpreg,vecsimple,veccomplex,veccmp,vecperm,vecfloat"
+(define_attr "type" "integer,load,load_ext,load_ext_u,load_ext_ux,load_ux,load_u,store,store_ux,store_u,fpload,fpload_ux,fpload_u,fpstore,fpstore_ux,fpstore_u,vecload,vecstore,imul,imul2,imul3,lmul,idiv,ldiv,branch,cmp,fast_compare,compare,delayed_compare,fpcompare,cr_logical,delayed_cr,mfcr,mtcr,mtjmpr,fp,dmul,sdiv,ddiv,ssqrt,dsqrt,jmpreg,vecsimple,veccomplex,veccmp,vecperm,vecfloat"
   (const_string "integer"))
 
 ;; Length (in bytes).
    {ai.|addic.} %3,%1,%2
    #
    #"
-  [(set_attr "type" "compare")
+  [(set_attr "type" "fast_compare,compare,compare,compare")
    (set_attr "length" "4,4,8,8")])
 
 (define_split
    {ai.|addic.} %0,%1,%2
    #
    #"
-  [(set_attr "type" "compare")
+  [(set_attr "type" "fast_compare,compare,compare,compare")
    (set_attr "length" "4,4,8,8")])
 
 (define_split
   "@
    subf. %3,%2,%1
    #"
-  [(set_attr "type" "compare")
+  [(set_attr "type" "fast_compare")
    (set_attr "length" "4,8")])
 
 (define_split
   "@
    subf. %0,%2,%1
    #"
-  [(set_attr "type" "compare")
+  [(set_attr "type" "fast_compare")
    (set_attr "length" "4,8")])
 
 (define_split
   "@
    neg. %2,%1
    #"
-  [(set_attr "type" "compare")
+  [(set_attr "type" "fast_compare")
    (set_attr "length" "4,8")])
 
 (define_split
   "@
    neg. %0,%1
    #"
-  [(set_attr "type" "compare")
+  [(set_attr "type" "fast_compare")
    (set_attr "length" "4,8")])
 
 (define_split
    addic. %3,%1,%2
    #
    #"
-  [(set_attr "type" "compare")
+  [(set_attr "type" "fast_compare,compare,compare,compare")
    (set_attr "length" "4,4,8,8")])
 
 (define_split
    addic. %0,%1,%2
    #
    #"
-  [(set_attr "type" "compare")
+  [(set_attr "type" "fast_compare,compare,compare,compare")
    (set_attr "length" "4,4,8,8")])
 
 (define_split
   "@
    subf. %3,%2,%1
    #"
-  [(set_attr "type" "compare")
+  [(set_attr "type" "fast_compare")
    (set_attr "length" "4,8")])
 
 (define_split
   "@
    subf. %0,%2,%1
    #"
-  [(set_attr "type" "compare")
+  [(set_attr "type" "fast_compare")
    (set_attr "length" "4,8")])
 
 (define_split
   "@
    neg. %2,%1
    #"
-  [(set_attr "type" "compare")
+  [(set_attr "type" "fast_compare")
    (set_attr "length" "4,8")])
 
 (define_split
   "@
    neg. %0,%1
    #"
-  [(set_attr "type" "compare")
+  [(set_attr "type" "fast_compare")
    (set_attr "length" "4,8")])
 
 (define_split
index 310a2fb..2db82c1 100644 (file)
@@ -77,7 +77,7 @@
   "mciu_rs64*66")
 
 (define_insn_reservation "rs64a-compare" 3
-  (and (eq_attr "type" "compare,delayed_compare")
+  (and (eq_attr "type" "cmp,fast_compare,compare,delayed_compare")
        (eq_attr "cpu" "rs64a"))
   "iu_rs64,nothing,bpu_rs64")