Mercurial > hg > CbC > CbC_gcc
diff gcc/config/rs6000/603.md @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | 77e2b8dfacca |
children | 84e7813d76e9 |
line wrap: on
line diff
--- a/gcc/config/rs6000/603.md Sun Aug 21 07:07:55 2011 +0900 +++ b/gcc/config/rs6000/603.md Fri Oct 27 22:46:09 2017 +0900 @@ -1,5 +1,5 @@ ;; Scheduling description for PowerPC 603 processor. -;; Copyright (C) 2003, 2004, 2007, 2009 Free Software Foundation, Inc. +;; Copyright (C) 2003-2017 Free Software Foundation, Inc. ;; ;; This file is part of GCC. @@ -38,17 +38,17 @@ ;; CR insns get executed in the SRU. Not modelled. (define_insn_reservation "ppc603-load" 2 - (and (eq_attr "type" "load,load_ext,load_ux,load_u,load_l") + (and (eq_attr "type" "load,load_l") (eq_attr "cpu" "ppc603")) "lsu_603") (define_insn_reservation "ppc603-store" 2 - (and (eq_attr "type" "store,store_ux,store_u,fpstore,fpstore_ux,fpstore_u") + (and (eq_attr "type" "store,fpstore") (eq_attr "cpu" "ppc603")) "lsu_603*2") (define_insn_reservation "ppc603-fpload" 2 - (and (eq_attr "type" "fpload,fpload_ux,fpload_u") + (and (eq_attr "type" "fpload") (eq_attr "cpu" "ppc603")) "lsu_603") @@ -58,8 +58,9 @@ "lsu_603") (define_insn_reservation "ppc603-integer" 1 - (and (eq_attr "type" "integer,insert_word,insert_dword,shift,trap,\ - var_shift_rotate,cntlz,exts,isel") + (and (ior (eq_attr "type" "integer,insert,trap,cntlz,isel") + (and (eq_attr "type" "add,logical,shift,exts") + (eq_attr "dot" "no"))) (eq_attr "cpu" "ppc603")) "iu_603") @@ -75,23 +76,26 @@ ; This takes 2 or 3 cycles (define_insn_reservation "ppc603-imul" 3 - (and (eq_attr "type" "imul,imul_compare") + (and (eq_attr "type" "mul") + (eq_attr "size" "32") (eq_attr "cpu" "ppc603")) "iu_603*2") (define_insn_reservation "ppc603-imul2" 2 - (and (eq_attr "type" "imul2,imul3") + (and (eq_attr "type" "mul") + (eq_attr "size" "8,16") (eq_attr "cpu" "ppc603")) "iu_603*2") (define_insn_reservation "ppc603-idiv" 37 - (and (eq_attr "type" "idiv") + (and (eq_attr "type" "div") (eq_attr "cpu" "ppc603")) "iu_603*37") (define_insn_reservation "ppc603-compare" 3 - (and (eq_attr "type" "cmp,fast_compare,compare,delayed_compare,\ - var_delayed_compare") + (and (ior (eq_attr "type" "cmp") + (and (eq_attr "type" "add,logical,shift,exts") + (eq_attr "dot" "yes"))) (eq_attr "cpu" "ppc603")) "iu_603,nothing,bpu_603") @@ -101,7 +105,7 @@ "(fpu_603+iu_603*2),bpu_603") (define_insn_reservation "ppc603-fp" 3 - (and (eq_attr "type" "fp") + (and (eq_attr "type" "fp,fpsimple") (eq_attr "cpu" "ppc603")) "fpu_603")