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 //===----------------------------------------------------------------------===// 13 def IF : FuncUnit; 14 def ID : FuncUnit; 15 def EX : FuncUnit; 16 def MA : FuncUnit; 17 def WB : FuncUnit; 18 19 //===----------------------------------------------------------------------===// 20 // Instruction Itinerary classes used for MBlaze 21 //===----------------------------------------------------------------------===// 22 def IIC_ALU : InstrItinClass; 23 def IIC_ALUm : InstrItinClass; 24 def IIC_ALUd : InstrItinClass; 25 def IIC_SHT : InstrItinClass; 26 def IIC_FSLg : InstrItinClass; 27 def IIC_FSLp : InstrItinClass; 28 def IIC_MEMs : InstrItinClass; 29 def IIC_MEMl : InstrItinClass; 30 def IIC_FPU : InstrItinClass; 31 def IIC_FPUd : InstrItinClass; 32 def IIC_FPUf : InstrItinClass; 33 def IIC_FPUi : InstrItinClass; 34 def IIC_FPUs : InstrItinClass; 35 def IIC_FPUc : InstrItinClass; 36 def IIC_BR : InstrItinClass; 37 def IIC_BRc : InstrItinClass; 38 def IIC_BRl : InstrItinClass; 39 def IIC_WDC : InstrItinClass; 40 def IIC_Pseudo : InstrItinClass; 41 42 //===----------------------------------------------------------------------===// 43 // MBlaze instruction itineraries for three stage pipeline. 44 //===----------------------------------------------------------------------===// 45 include "MBlazeSchedule3.td" 46 47 //===----------------------------------------------------------------------===// 48 // MBlaze instruction itineraries for five stage pipeline. 49 //===----------------------------------------------------------------------===// 50 include "MBlazeSchedule5.td" 51