diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/Target/TargetSchedule.td | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/include/llvm/Target/TargetSchedule.td b/include/llvm/Target/TargetSchedule.td index bd6791f..64ab4f0 100644 --- a/include/llvm/Target/TargetSchedule.td +++ b/include/llvm/Target/TargetSchedule.td @@ -44,18 +44,15 @@ def Reserved : ReservationKind<1>; // InstrStage<1, [FU_x, FU_y], 0> - TimeInc explicit // -class InstrStage2<int cycles, list<FuncUnit> units, - int timeinc, ReservationKind kind> { +class InstrStage<int cycles, list<FuncUnit> units, + int timeinc = -1, + ReservationKind kind = Required> { int Cycles = cycles; // length of stage in machine cycles list<FuncUnit> Units = units; // choice of functional units int TimeInc = timeinc; // cycles till start of next stage int Kind = kind.Value; // kind of FU reservation } -class InstrStage<int cycles, list<FuncUnit> units, - int timeinc = -1> - : InstrStage2<cycles, units, timeinc, Required>; - //===----------------------------------------------------------------------===// // Instruction itinerary - An itinerary represents a sequential series of steps // required to complete an instruction. Itineraries are represented as lists of @@ -76,10 +73,10 @@ def NoItinerary : InstrItinClass; // Instruction itinerary data - These values provide a runtime map of an // instruction itinerary class (name) to its itinerary data. // -class InstrItinData<InstrItinClass Class, list<InstrStage2> stages, +class InstrItinData<InstrItinClass Class, list<InstrStage> stages, list<int> operandcycles = []> { InstrItinClass TheClass = Class; - list<InstrStage2> Stages = stages; + list<InstrStage> Stages = stages; list<int> OperandCycles = operandcycles; } |