• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1//===- MBlazeSchedule.td - MBlaze Scheduling Definitions ---*- tablegen -*-===//
2//
3//                     The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10//===----------------------------------------------------------------------===//
11// MBlaze functional units.
12//===----------------------------------------------------------------------===//
13def IF : FuncUnit;
14def ID : FuncUnit;
15def EX : FuncUnit;
16def MA : FuncUnit;
17def WB : FuncUnit;
18
19//===----------------------------------------------------------------------===//
20// Instruction Itinerary classes used for MBlaze
21//===----------------------------------------------------------------------===//
22def IIC_ALU    : InstrItinClass;
23def IIC_ALUm   : InstrItinClass;
24def IIC_ALUd   : InstrItinClass;
25def IIC_SHT    : InstrItinClass;
26def IIC_FSLg   : InstrItinClass;
27def IIC_FSLp   : InstrItinClass;
28def IIC_MEMs   : InstrItinClass;
29def IIC_MEMl   : InstrItinClass;
30def IIC_FPU    : InstrItinClass;
31def IIC_FPUd   : InstrItinClass;
32def IIC_FPUf   : InstrItinClass;
33def IIC_FPUi   : InstrItinClass;
34def IIC_FPUs   : InstrItinClass;
35def IIC_FPUc   : InstrItinClass;
36def IIC_BR     : InstrItinClass;
37def IIC_BRc    : InstrItinClass;
38def IIC_BRl    : InstrItinClass;
39def IIC_WDC    : InstrItinClass;
40def IIC_Pseudo : InstrItinClass;
41
42//===----------------------------------------------------------------------===//
43// MBlaze generic instruction itineraries.
44//===----------------------------------------------------------------------===//
45def MBlazeGenericItineraries : ProcessorItineraries<[], [], []>;
46
47//===----------------------------------------------------------------------===//
48// MBlaze instruction itineraries for three stage pipeline.
49//===----------------------------------------------------------------------===//
50include "MBlazeSchedule3.td"
51
52//===----------------------------------------------------------------------===//
53// MBlaze instruction itineraries for five stage pipeline.
54//===----------------------------------------------------------------------===//
55include "MBlazeSchedule5.td"
56