6000.md revision 302408
1216390Sjchandra;; R6000 pipeline description.
2216390Sjchandra;;   Copyright (C) 2004 Free Software Foundation, Inc.
3216390Sjchandra;;
4216390Sjchandra;; This file is part of GCC.
5216390Sjchandra
6216390Sjchandra;; GCC is free software; you can redistribute it and/or modify it
7216390Sjchandra;; under the terms of the GNU General Public License as published
8216390Sjchandra;; by the Free Software Foundation; either version 2, or (at your
9216390Sjchandra;; option) any later version.
10216390Sjchandra
11216390Sjchandra;; GCC is distributed in the hope that it will be useful, but WITHOUT
12216390Sjchandra;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13216390Sjchandra;; or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
14216390Sjchandra;; License for more details.
15216390Sjchandra
16216390Sjchandra;; You should have received a copy of the GNU General Public License
17216390Sjchandra;; along with GCC; see the file COPYING.  If not, write to the
18216390Sjchandra;; Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston,
19216390Sjchandra;; MA 02110-1301, USA.
20216390Sjchandra
21216390Sjchandra
22216390Sjchandra;; This file overrides parts of generic.md.  It is derived from the
23216390Sjchandra;; old define_function_unit description.
24216390Sjchandra
25216390Sjchandra(define_insn_reservation "r6k_fcmp" 2
26216390Sjchandra  (and (eq_attr "cpu" "r6000")
27216390Sjchandra       (eq_attr "type" "fcmp"))
28216390Sjchandra  "alu")
29216390Sjchandra
30216390Sjchandra(define_insn_reservation "r6k_fadd" 3
31216390Sjchandra  (and (eq_attr "cpu" "r6000")
32216390Sjchandra       (eq_attr "type" "fadd"))
33216390Sjchandra  "alu")
34216390Sjchandra
35216390Sjchandra(define_insn_reservation "r6k_fmul_single" 5
36216390Sjchandra  (and (eq_attr "cpu" "r6000")
37216390Sjchandra       (and (eq_attr "type" "fmul,fmadd")
38216390Sjchandra	    (eq_attr "mode" "SF")))
39216390Sjchandra  "alu")
40216390Sjchandra
41216390Sjchandra(define_insn_reservation "r6k_fmul_double" 6
42216390Sjchandra  (and (eq_attr "cpu" "r6000")
43216390Sjchandra       (and (eq_attr "type" "fmul,fmadd")
44216390Sjchandra	    (eq_attr "mode" "DF")))
45216390Sjchandra  "alu")
46216390Sjchandra
47216390Sjchandra(define_insn_reservation "r6k_fdiv_single" 15
48216390Sjchandra  (and (eq_attr "cpu" "r6000")
49216390Sjchandra       (and (eq_attr "type" "fdiv,frdiv")
50216390Sjchandra	    (eq_attr "mode" "SF")))
51216390Sjchandra  "alu")
52216390Sjchandra
53216390Sjchandra(define_insn_reservation "r6k_fdiv_double" 16
54216390Sjchandra  (and (eq_attr "cpu" "r6000")
55216390Sjchandra       (and (eq_attr "type" "fdiv,frdiv")
56216390Sjchandra	    (eq_attr "mode" "DF")))
57216390Sjchandra  "alu")
58216390Sjchandra