Mercurial > hg > CbC > CbC_llvm
comparison lib/Target/PowerPC/PPCScheduleA2.td @ 120:1172e4bd9c6f
update 4.0.0
author | mir3636 |
---|---|
date | Fri, 25 Nov 2016 19:14:25 +0900 |
parents | 60c9769439b8 |
children | c2174574ed3a |
comparison
equal
deleted
inserted
replaced
101:34baf5011add | 120:1172e4bd9c6f |
---|---|
1 //===- PPCScheduleA2.td - PPC A2 Scheduling Definitions --*- tablegen -*-===// | 1 //===- PPCScheduleA2.td - PPC A2 Scheduling Definitions --*- tablegen -*-===// |
2 // | 2 // |
3 // The LLVM Compiler Infrastructure | 3 // The LLVM Compiler Infrastructure |
4 // | 4 // |
5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
7 // | 7 // |
8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
9 | 9 |
10 // Primary reference: | 10 // Primary reference: |
11 // A2 Processor User's Manual. | 11 // A2 Processor User's Manual. |
12 // IBM (as updated in) 2010. | 12 // IBM (as updated in) 2010. |
158 // ===---------------------------------------------------------------------===// | 158 // ===---------------------------------------------------------------------===// |
159 // A2 machine model for scheduling and other instruction cost heuristics. | 159 // A2 machine model for scheduling and other instruction cost heuristics. |
160 | 160 |
161 def PPCA2Model : SchedMachineModel { | 161 def PPCA2Model : SchedMachineModel { |
162 let IssueWidth = 1; // 1 instruction is dispatched per cycle. | 162 let IssueWidth = 1; // 1 instruction is dispatched per cycle. |
163 let MinLatency = -1; // OperandCycles are interpreted as MinLatency. | |
164 let LoadLatency = 6; // Optimistic load latency assuming bypass. | 163 let LoadLatency = 6; // Optimistic load latency assuming bypass. |
165 // This is overriden by OperandCycles if the | 164 // This is overriden by OperandCycles if the |
166 // Itineraries are queried instead. | 165 // Itineraries are queried instead. |
167 let MispredictPenalty = 13; | 166 let MispredictPenalty = 13; |
168 | 167 |
168 let CompleteModel = 0; | |
169 | |
169 let Itineraries = PPCA2Itineraries; | 170 let Itineraries = PPCA2Itineraries; |
170 } | 171 } |
171 | 172 |