blob: 75fa707f9f93d18c7aa59a5f8006ca89994ba347 [file] [log] [blame]
Evan Cheng8557c2b2009-06-19 01:51:50 +00001//===- ARMSchedule.td - ARM 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// Functional units across ARM processors
12//
13def FU_iALU : FuncUnit; // Integer alu unit
14def FU_iLdSt : FuncUnit; // Integer load / store unit
15def FU_FpALU : FuncUnit; // FP alu unit
16def FU_FpLdSt : FuncUnit; // FP load / store unit
17def FU_Br : FuncUnit; // Branch unit
18
19//===----------------------------------------------------------------------===//
20// Instruction Itinerary classes used for ARM
21//
22def IIC_iALU : InstrItinClass;
23def IIC_iLoad : InstrItinClass;
24def IIC_iStore : InstrItinClass;
25def IIC_fpALU : InstrItinClass;
26def IIC_fpLoad : InstrItinClass;
27def IIC_fpStore : InstrItinClass;
28def IIC_Br : InstrItinClass;
29
30//===----------------------------------------------------------------------===//
31// Processor instruction itineraries.
32
33def GenericItineraries : ProcessorItineraries<[]>;
34
35include "ARMScheduleV6.td"