OpenCores
URL https://opencores.org/ocsvn/scarts/scarts/trunk

Subversion Repositories scarts

[/] [scarts/] [trunk/] [toolchain/] [scarts-gcc/] [gcc-4.1.1/] [gcc/] [config/] [mips/] [generic.md] - Blame information for rev 12

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 12 jlechner
;; Generic DFA-based pipeline description for MIPS targets
2
;;   Copyright (C) 2004, 2005 Free Software Foundation, Inc.
3
;;
4
;; This file is part of GCC.
5
 
6
;; GCC is free software; you can redistribute it and/or modify it
7
;; under the terms of the GNU General Public License as published
8
;; by the Free Software Foundation; either version 2, or (at your
9
;; option) any later version.
10
 
11
;; GCC is distributed in the hope that it will be useful, but WITHOUT
12
;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13
;; or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
14
;; License for more details.
15
 
16
;; You should have received a copy of the GNU General Public License
17
;; along with GCC; see the file COPYING.  If not, write to the
18
;; Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston,
19
;; MA 02110-1301, USA.
20
 
21
 
22
;; This file is derived from the old define_function_unit description.
23
;; Each reservation can be overridden on a processor-by-processor basis.
24
 
25
(define_insn_reservation "generic_alu" 1
26
  (eq_attr "type" "unknown,prefetch,prefetchx,condmove,const,arith,
27
                   shift,slt,clz,trap,multi,nop")
28
  "alu")
29
 
30
(define_insn_reservation "generic_load" 3
31
  (eq_attr "type" "load,fpload,fpidxload")
32
  "alu")
33
 
34
(define_insn_reservation "generic_store" 1
35
  (eq_attr "type" "store,fpstore,fpidxstore")
36
  "alu")
37
 
38
(define_insn_reservation "generic_xfer" 2
39
  (eq_attr "type" "xfer")
40
  "alu")
41
 
42
(define_insn_reservation "generic_branch" 1
43
  (eq_attr "type" "branch,jump,call")
44
  "alu")
45
 
46
(define_insn_reservation "generic_hilo" 1
47
  (eq_attr "type" "mfhilo,mthilo")
48
  "imuldiv*3")
49
 
50
(define_insn_reservation "generic_imul" 17
51
  (eq_attr "type" "imul,imul3,imadd")
52
  "imuldiv*17")
53
 
54
(define_insn_reservation "generic_idiv" 38
55
  (eq_attr "type" "idiv")
56
  "imuldiv*38")
57
 
58
(define_insn_reservation "generic_fcvt" 1
59
  (eq_attr "type" "fcvt")
60
  "alu")
61
 
62
(define_insn_reservation "generic_fmove" 2
63
  (eq_attr "type" "fabs,fneg,fmove")
64
  "alu")
65
 
66
(define_insn_reservation "generic_fcmp" 3
67
  (eq_attr "type" "fcmp")
68
  "alu")
69
 
70
(define_insn_reservation "generic_fadd" 4
71
  (eq_attr "type" "fadd")
72
  "alu")
73
 
74
(define_insn_reservation "generic_fmul_single" 7
75
  (and (eq_attr "type" "fmul,fmadd")
76
       (eq_attr "mode" "SF"))
77
  "alu")
78
 
79
(define_insn_reservation "generic_fmul_double" 8
80
  (and (eq_attr "type" "fmul,fmadd")
81
       (eq_attr "mode" "DF"))
82
  "alu")
83
 
84
(define_insn_reservation "generic_fdiv_single" 23
85
  (and (eq_attr "type" "fdiv,frdiv")
86
       (eq_attr "mode" "SF"))
87
  "alu")
88
 
89
(define_insn_reservation "generic_fdiv_double" 36
90
  (and (eq_attr "type" "fdiv,frdiv")
91
       (eq_attr "mode" "DF"))
92
  "alu")
93
 
94
(define_insn_reservation "generic_fsqrt_single" 54
95
  (and (eq_attr "type" "fsqrt,frsqrt")
96
       (eq_attr "mode" "SF"))
97
  "alu")
98
 
99
(define_insn_reservation "generic_fsqrt_double" 112
100
  (and (eq_attr "type" "fsqrt,frsqrt")
101
       (eq_attr "mode" "DF"))
102
  "alu")
103
 
104
(define_insn_reservation "generic_frecip_fsqrt_step" 5
105
  (eq_attr "type" "frdiv1,frdiv2,frsqrt1,frsqrt2")
106
  "alu")

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.