diff options
Diffstat (limited to 'contrib/gcc/config/rs6000/440.md')
-rw-r--r-- | contrib/gcc/config/rs6000/440.md | 25 |
1 files changed, 19 insertions, 6 deletions
diff --git a/contrib/gcc/config/rs6000/440.md b/contrib/gcc/config/rs6000/440.md index e98d5be..60e0f72 100644 --- a/contrib/gcc/config/rs6000/440.md +++ b/contrib/gcc/config/rs6000/440.md @@ -1,5 +1,5 @@ ;; Scheduling description for IBM PowerPC 440 processor. -;; Copyright (C) 2003 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. ;; ;; This file is part of GCC. ;; @@ -15,8 +15,8 @@ ;; ;; You should have received a copy of the GNU General Public License ;; along with GCC; see the file COPYING. If not, write to -;; the Free Software Foundation, 59 Temple Place - Suite 330, -;; Boston, MA 02111-1307, USA. +;; the Free Software Foundation, 51 Franklin Street, Fifth Floor, +;; Boston, MA 02110-1301, USA. ;; PPC440 Embedded PowerPC controller ;; dual issue @@ -34,11 +34,12 @@ (define_insn_reservation "ppc440-load" 3 - (and (eq_attr "type" "load,load_ext,load_ext_u,load_ext_ux,load_ux,load_u") + (and (eq_attr "type" "load,load_ext,load_ext_u,load_ext_ux,load_ux,load_u,\ + load_l,store_c,sync") (eq_attr "cpu" "ppc440")) "ppc440_issue,ppc440_l_pipe") -(define_insn_reservation "ppc440-store" 1 +(define_insn_reservation "ppc440-store" 3 (and (eq_attr "type" "store,store_ux,store_u") (eq_attr "cpu" "ppc440")) "ppc440_issue,ppc440_l_pipe") @@ -58,6 +59,18 @@ (eq_attr "cpu" "ppc440")) "ppc440_issue,ppc440_i_pipe|ppc440_j_pipe") +(define_insn_reservation "ppc440-two" 1 + (and (eq_attr "type" "two") + (eq_attr "cpu" "ppc440")) + "ppc440_issue_0+ppc440_issue_1,\ + ppc440_i_pipe|ppc440_j_pipe,ppc440_i_pipe|ppc440_j_pipe") + +(define_insn_reservation "ppc440-three" 1 + (and (eq_attr "type" "three") + (eq_attr "cpu" "ppc440")) + "ppc440_issue_0+ppc440_issue_1,ppc440_i_pipe|ppc440_j_pipe,\ + ppc440_i_pipe|ppc440_j_pipe,ppc440_i_pipe|ppc440_j_pipe") + (define_insn_reservation "ppc440-imul" 3 (and (eq_attr "type" "imul,imul_compare") (eq_attr "cpu" "ppc440")) @@ -74,7 +87,7 @@ "ppc440_issue,ppc440_i_pipe*33") (define_insn_reservation "ppc440-branch" 1 - (and (eq_attr "type" "branch,jmpreg") + (and (eq_attr "type" "branch,jmpreg,isync") (eq_attr "cpu" "ppc440")) "ppc440_issue,ppc440_i_pipe") |