/external/llvm/lib/Target/AArch64/ |
D | AArch64SchedKryo.td | 60 def : WriteRes<WriteImm, [KryoUnitXY]> { let Latency = 1; } 61 def : WriteRes<WriteI, [KryoUnitXY]> { let Latency = 1; } 62 def : WriteRes<WriteISReg, [KryoUnitXY, KryoUnitXY]> 64 def : WriteRes<WriteIEReg, [KryoUnitXY, KryoUnitXY]> 66 def : WriteRes<WriteExtr, [KryoUnitXY, KryoUnitX]> 68 def : WriteRes<WriteIS, [KryoUnitXY]> { let Latency = 2; } 69 def : WriteRes<WriteID32, [KryoUnitXA, KryoUnitY]> 71 def : WriteRes<WriteID64, [KryoUnitXA, KryoUnitY]> 73 def : WriteRes<WriteIM32, [KryoUnitX]> { let Latency = 5; } 74 def : WriteRes<WriteIM64, [KryoUnitX]> { let Latency = 5; } [all …]
|
D | AArch64SchedA53.td | 57 def : WriteRes<WriteImm, [A53UnitALU]> { let Latency = 3; } 58 def : WriteRes<WriteI, [A53UnitALU]> { let Latency = 3; } 59 def : WriteRes<WriteISReg, [A53UnitALU]> { let Latency = 3; } 60 def : WriteRes<WriteIEReg, [A53UnitALU]> { let Latency = 3; } 61 def : WriteRes<WriteIS, [A53UnitALU]> { let Latency = 2; } 62 def : WriteRes<WriteExtr, [A53UnitALU]> { let Latency = 3; } 65 def : WriteRes<WriteIM32, [A53UnitMAC]> { let Latency = 4; } 66 def : WriteRes<WriteIM64, [A53UnitMAC]> { let Latency = 4; } 69 def : WriteRes<WriteID32, [A53UnitDiv]> { let Latency = 4; } 70 def : WriteRes<WriteID64, [A53UnitDiv]> { let Latency = 4; } [all …]
|
D | AArch64SchedM1.td | 71 def : WriteRes<WriteBr, [M1UnitB]> { let Latency = 1; } 72 def : WriteRes<WriteBrReg, [M1UnitC]> { let Latency = 1; } 76 def : WriteRes<WriteI, [M1UnitALU]> { let Latency = 1; } 78 def : WriteRes<WriteISReg, [M1UnitALU]> { let Latency = 1; } 79 def : WriteRes<WriteIEReg, [M1UnitALU]> { let Latency = 1; } 80 def : WriteRes<WriteIS, [M1UnitALU]> { let Latency = 1; } 83 def : WriteRes<WriteImm, [M1UnitALU]> { let Latency = 1; } 87 def : WriteRes<WriteID32, [M1UnitC]> { let Latency = 13; } 88 def : WriteRes<WriteID64, [M1UnitC]> { let Latency = 21; } 91 def : WriteRes<WriteIM32, [M1UnitC]> { let Latency = 3; } [all …]
|
D | AArch64SchedVulcan.td | 54 // by a WriteRes later on. 217 def : WriteRes<WriteBr, [VulcanI2]> { let Latency = 1; } 219 def : WriteRes<WriteSys, []> { let Latency = 1; } 220 def : WriteRes<WriteBarrier, []> { let Latency = 1; } 221 def : WriteRes<WriteHint, []> { let Latency = 1; } 223 def : WriteRes<WriteAtomic, []> { let Unsupported = 1; } 228 def : WriteRes<WriteBrReg, [VulcanI2]> { let Latency = 1; } 239 def : WriteRes<WriteI, [VulcanI012]> { let Latency = 1; } 243 def : WriteRes<WriteISReg, [VulcanI012]> { 248 def : WriteRes<WriteIEReg, [VulcanI012]> { [all …]
|
D | AArch64SchedCyclone.td | 130 def : WriteRes<WriteImm, [CyUnitI]>; 149 def : WriteRes<WriteI, [CyUnitI]>; 155 def : WriteRes<WriteISReg, [CyUnitIS]> { 163 def : WriteRes<WriteIEReg, [CyUnitIS]> { 170 def : WriteRes<WriteIS, [CyUnitIS]>; 175 def : WriteRes<WriteExtr, [CyUnitIS, CyUnitIS]> { 191 def : WriteRes<WriteIM32, [CyUnitIM]> { 195 def : WriteRes<WriteIM64, [CyUnitIM]> { 206 def : WriteRes<WriteID32, [CyUnitID, CyUnitIntDiv]> { 213 def : WriteRes<WriteID64, [CyUnitID, CyUnitIntDiv]> { [all …]
|
D | AArch64SchedA57.td | 62 // defining the aliases precludes the need for mapping them using WriteRes. The 79 def : WriteRes<WriteIM32, [A57UnitM]> { let Latency = 3; } 80 def : WriteRes<WriteIM64, [A57UnitM]> { let Latency = 5; } 100 def : WriteRes<WriteAtomic, []> { let Unsupported = 1; } 102 def : WriteRes<WriteSys, []> { let Latency = 1; } 103 def : WriteRes<WriteBarrier, []> { let Latency = 1; } 104 def : WriteRes<WriteHint, []> { let Latency = 1; } 106 def : WriteRes<WriteLDHi, []> { let Latency = 4; }
|
/external/llvm/lib/Target/X86/ |
D | X86ScheduleSLM.td | 63 def : WriteRes<SchedRW, [ExePort]> { let Latency = Lat; } 67 def : WriteRes<SchedRW.Folded, [MEC_RSV, ExePort]> { 74 def : WriteRes<WriteRMW, [MEC_RSV]>; 76 def : WriteRes<WriteStore, [IEC_RSV01, MEC_RSV]>; 77 def : WriteRes<WriteLoad, [MEC_RSV]> { let Latency = 3; } 78 def : WriteRes<WriteMove, [IEC_RSV01]>; 79 def : WriteRes<WriteZero, []>; 89 def : WriteRes<WriteLEA, [IEC_RSV1]>; 92 def : WriteRes<WriteIDiv, [IEC_RSV01, SMDivider]> { 96 def : WriteRes<WriteIDivLd, [MEC_RSV, IEC_RSV01, SMDivider]> { [all …]
|
D | X86ScheduleBtVer2.td | 81 def : WriteRes<SchedRW, [ExePort]> { let Latency = Lat; } 85 def : WriteRes<SchedRW.Folded, [JLAGU, ExePort]> { 94 def : WriteRes<SchedRW, [ExePort]> { let Latency = Lat; } 98 def : WriteRes<SchedRW.Folded, [JLAGU, ExePort]> { 104 def : WriteRes<WriteRMW, [JSAGU]>; 113 def : WriteRes<WriteIMulH, [JALU1]> { 119 def : WriteRes<WriteIDiv, [JALU1, JDiv]> { 123 def : WriteRes<WriteIDivLd, [JALU1, JLAGU, JDiv]> { 130 def : WriteRes<WriteLEA, [JALU01]>; 143 def : WriteRes<WriteLoad, [JLAGU]> { let Latency = 5; } [all …]
|
D | X86SchedSandyBridge.td | 76 def : WriteRes<SchedRW, [ExePort]> { let Latency = Lat; } 80 def : WriteRes<SchedRW.Folded, [SBPort23, ExePort]> { 87 def : WriteRes<WriteRMW, [SBPort4]>; 89 def : WriteRes<WriteStore, [SBPort23, SBPort4]>; 90 def : WriteRes<WriteLoad, [SBPort23]> { let Latency = 4; } 91 def : WriteRes<WriteMove, [SBPort015]>; 92 def : WriteRes<WriteZero, []>; 96 def : WriteRes<WriteIMulH, []> { let Latency = 3; } 103 def : WriteRes<WriteLEA, [SBPort15]>; 106 def : WriteRes<WriteIDiv, [SBPort0, SBDivider]> { [all …]
|
D | X86SchedHaswell.td | 86 def : WriteRes<SchedRW, [ExePort]> { let Latency = Lat; } 90 def : WriteRes<SchedRW.Folded, [HWPort23, ExePort]> { 97 def : WriteRes<WriteRMW, [HWPort4]>; 101 def : WriteRes<WriteStore, [HWPort237, HWPort4]>; 102 def : WriteRes<WriteLoad, [HWPort23]> { let Latency = 4; } 103 def : WriteRes<WriteMove, [HWPort0156]>; 104 def : WriteRes<WriteZero, []>; 108 def : WriteRes<WriteIMulH, []> { let Latency = 3; } 115 def : WriteRes<WriteLEA, [HWPort15]>; 118 def : WriteRes<WriteIDiv, [HWPort0, HWDivider]> { [all …]
|
/external/llvm/lib/Target/Lanai/ |
D | LanaiSchedule.td | 65 def : WriteRes<WriteLD, [LdSt]> { let Latency = 2; } 66 def : WriteRes<WriteST, [LdSt]> { let Latency = 2; } 67 def : WriteRes<WriteLDSW, [LdSt]> { let Latency = 2; } 68 def : WriteRes<WriteSTSW, [LdSt]> { let Latency = 4; } 69 def : WriteRes<WriteALU, [ALU]> { let Latency = 1; }
|
/external/llvm/utils/TableGen/ |
D | SubtargetEmitter.cpp | 913 Record *WriteRes = in GenSchedClassTables() local 917 if (WriteRes->getValueAsBit("Unsupported")) { in GenSchedClassTables() 921 WLEntry.Cycles += WriteRes->getValueAsInt("Latency"); in GenSchedClassTables() 922 SCDesc.NumMicroOps += WriteRes->getValueAsInt("NumMicroOps"); in GenSchedClassTables() 923 SCDesc.BeginGroup |= WriteRes->getValueAsBit("BeginGroup"); in GenSchedClassTables() 924 SCDesc.EndGroup |= WriteRes->getValueAsBit("EndGroup"); in GenSchedClassTables() 927 RecVec PRVec = WriteRes->getValueAsListOfDefs("ProcResources"); in GenSchedClassTables() 929 WriteRes->getValueAsListOfInts("ResourceCycles"); in GenSchedClassTables()
|
/external/llvm/lib/Target/ARM/ |
D | ARMScheduleSwift.td | 130 def : WriteRes<WriteALU, [SwiftUnitP01]>; 144 def : WriteRes<WriteCMP, [SwiftUnitP01]>; 303 def : WriteRes<WriteDiv, [SwiftUnitDiv]>; // Workaround. 532 def : WriteRes<WriteBr, [SwiftUnitP1]> { let Latency = 0; } 533 def : WriteRes<WriteBrL, [SwiftUnitP1]> { let Latency = 2; } 534 def : WriteRes<WriteBrTbl, [SwiftUnitP1, SwiftUnitP2]> { let Latency = 0; } 537 def : WriteRes<WriteNoop, []> { let Latency = 0; let NumMicroOps = 0; } 611 def : WriteRes<WriteCvtFP, [SwiftUnitP1]> { let Latency = 4; } 1042 def : WriteRes<WritePreLd, [SwiftUnitP2]> { let Latency = 0;
|
D | ARMScheduleA9.td | 1936 def : WriteRes<WriteALUsi, [A9UnitALU]> { let Latency = 2; } 2521 def : WriteRes<WriteDiv, []> { let Latency = 0; } 2523 def : WriteRes<WriteBr, [A9UnitB]>; 2524 def : WriteRes<WriteBrL, [A9UnitB]>; 2525 def : WriteRes<WriteBrTbl, [A9UnitB]>; 2526 def : WriteRes<WritePreLd, []>; 2528 def : WriteRes<WriteNoop, []> { let Latency = 0; let NumMicroOps = 0; }
|
D | ARMSchedule.td | 48 // def : WriteRes<WriteALUsr, [P01, P01]> {
|
/external/llvm/lib/Target/AMDGPU/ |
D | SISchedule.td | 78 int latency> : WriteRes<write, resources> {
|
/external/llvm/include/llvm/Target/ |
D | TargetSchedule.td | 27 // each subtarget, define WriteRes and ReadAdvance to associate 143 // specified in WriteRes expire. Setting BufferSize=1 changes this to 245 // Define values common to WriteRes and SchedWriteRes. 295 class WriteRes<SchedWrite write, list<ProcResourceKind> resources>
|