| /freebsd/contrib/llvm-project/llvm/lib/Target/RISCV/ |
| H A D | RISCVSchedSyntacoreSCR345.td | 283 def SCR3RV32_ALU : ProcResource<1>; 284 def SCR3RV32_MUL : ProcResource<1>; 285 def SCR3RV32_DIV : ProcResource<1>; 286 def SCR3RV32_LSU : ProcResource<1>; 287 def SCR3RV32_CFU : ProcResource<1>; 308 def SCR3RV64_ALU : ProcResource<1>; 309 def SCR3RV64_MUL : ProcResource<1>; 310 def SCR3RV64_DIV : ProcResource<1>; 311 def SCR3RV64_LSU : ProcResource<1>; 312 def SCR3RV64_CFU : ProcResource<1>; [all …]
|
| H A D | RISCVSchedMIPSP8700.td | 31 def p8700ALQ : ProcResource<1> { let BufferSize = 16; } 34 def p8700AGQ : ProcResource<3> { let BufferSize = 16; } 35 def p8700IssueAL2 : ProcResource<1> { let Super = p8700AGQ; } 36 def p8700IssueCTI : ProcResource<1> { let Super = p8700AGQ; } 37 def p8700IssueLSU : ProcResource<1> { let Super = p8700AGQ; } 41 def p8700GpDiv : ProcResource<1>; 42 def p8700GpMul : ProcResource<1>; 132 def p8700FPQ : ProcResource<3> { let BufferSize = 16; } 133 def p8700IssueFPUS : ProcResource<1> { let Super = p8700FPQ; } 134 def p8700IssueFPUL : ProcResource<1> { let Super = p8700FPQ; } [all …]
|
| H A D | RISCVSchedSyntacoreSCR1.td | 33 def SCR1_ALU : ProcResource<1>; 34 def SCR1_LSU : ProcResource<1>; 35 def SCR1_MUL : ProcResource<1>; 36 def SCR1_DIV : ProcResource<1>; 37 def SCR1_CFU : ProcResource<1>;
|
| H A D | RISCVSchedRocket.td | 29 // Modeling each pipeline as a ProcResource using the BufferSize = 0 since 33 def RocketUnitALU : ProcResource<1>; // Int ALU 34 def RocketUnitIMul : ProcResource<1>; // Int Multiply 35 def RocketUnitMem : ProcResource<1>; // Load/Store 36 def RocketUnitB : ProcResource<1>; // Branch 38 def RocketUnitFPALU : ProcResource<1>; // FP ALU 42 def RocketUnitIDiv : ProcResource<1>; // Int Division 43 def RocketUnitFPDivSqrt : ProcResource<1>; // FP Divide/Sqrt
|
| H A D | RISCVSchedSiFiveP500.td | 26 def SiFiveP500IEXQ0 : ProcResource<1>; 27 def SiFiveP500IEXQ1 : ProcResource<1>; 28 def SiFiveP500IEXQ2 : ProcResource<1>; 29 def SiFiveP500FEXQ0 : ProcResource<1>; 30 def SiFiveP500FEXQ1 : ProcResource<1>; 31 def SiFiveP500Load : ProcResource<1>; 32 def SiFiveP500Store : ProcResource<1>; 39 def SiFiveP500Div : ProcResource<1>; 43 def SiFiveP500FloatDiv : ProcResource<1>;
|
| H A D | RISCVSchedSyntacoreSCR7.td | 352 def SCR7_ALU_MUL_IS : ProcResource<1> { let BufferSize = 8; } 353 def SCR7_ALU_DIV_IS : ProcResource<1> { let BufferSize = 8; } 355 def SCR7_MUL : ProcResource<1> { let BufferSize = 1; } 356 def SCR7_DIV : ProcResource<1> { let BufferSize = 1; } 363 def SCR7_LSU : ProcResource<1> { let BufferSize = 16; } 371 def SCR7_FPU_IS : ProcResource<1> { let BufferSize = 8; } 372 def SCR7_FALU : ProcResource<1> { let BufferSize = 1; } 373 def SCR7_FMA : ProcResource<1> { let BufferSize = 1; } 374 def SCR7_FDIVSQRT : ProcResource<1> { let BufferSize = 1; }
|
| H A D | RISCVSchedAndes45.td | 38 def Andes45ALU : ProcResource<2>; 39 def Andes45MDU : ProcResource<1>; 40 def Andes45LSU : ProcResource<1>; 41 def Andes45CSR : ProcResource<1>; 43 def Andes45FMAC : ProcResource<1>; 44 def Andes45FDIV : ProcResource<1>; 45 def Andes45FMV : ProcResource<1>; 46 def Andes45FMISC : ProcResource<1>;
|
| H A D | RISCVSchedXiangShanNanHu.td | 34 def XS2ALU : ProcResource<4>; 35 def XS2MDU : ProcResource<2>; 36 def XS2MISC : ProcResource<1>; 38 def XS2FMAC : ProcResource<4>; 39 def XS2FMISC : ProcResource<2>; 42 def XS2LD : ProcResource<2>; 43 def XS2ST : ProcResource<2>;
|
| H A D | RISCVSchedTTAscalonD8.td | 32 def AscalonLS : ProcResource<3>; 33 def AscalonFXA : ProcResource<1>; // ALU, FP/VEC -> INT, MUL, DIV, CSR 34 def AscalonFXB : ProcResource<1>; // ALU, INT -> FP/VEC 35 def AscalonFXC : ProcResource<2>; // ALU, BR 36 def AscalonFXD : ProcResource<2>; // ALU 37 def AscalonFP : ProcResource<2>;
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AArch64/ |
| H A D | AArch64SchedFalkor.td | 39 def FalkorUnitB : ProcResource<1>; // Branch 40 def FalkorUnitLD : ProcResource<1>; // Load pipe 41 def FalkorUnitSD : ProcResource<1>; // Store data 42 def FalkorUnitST : ProcResource<1>; // Store pipe 43 def FalkorUnitX : ProcResource<1>; // Complex arithmetic 44 def FalkorUnitY : ProcResource<1>; // Simple arithmetic 45 def FalkorUnitZ : ProcResource<1>; // Simple arithmetic 47 def FalkorUnitVSD : ProcResource<1>; // Vector store data 48 def FalkorUnitVX : ProcResource<1>; // Vector X-pipe 49 def FalkorUnitVY : ProcResource< [all...] |
| H A D | AArch64SchedExynosM5.td | 38 def M5UnitA : ProcResource<2>; // Simple integer 39 def M5UnitC : ProcResource<2>; // Simple and complex integer 41 def M5UnitD : ProcResource<1>; // Integer division (inside C0, serialized) 42 def M5UnitE : ProcResource<2>; // Simple 32-bit integer 44 def M5UnitF : ProcResource<2>; // CRC (inside C) 45 def M5UnitB : ProcResource<1>; // Branch 46 def M5UnitL0 : ProcResource<1>; // Load 47 def M5UnitS0 : ProcResource<1>; // Store 48 def M5PipeLS : ProcResource<1>; // Load/Store 50 def M5UnitL1 : ProcResource<1>; [all …]
|
| H A D | AArch64SchedExynosM3.td | 39 def M3UnitA : ProcResource<2>; // Simple integer 40 def M3UnitC : ProcResource<2>; // Simple and complex integer 41 def M3UnitD : ProcResource<1>; // Integer division (inside C0, serialized) 42 def M3UnitB : ProcResource<2>; // Branch 43 def M3UnitL : ProcResource<2>; // Load 44 def M3UnitS : ProcResource<1>; // Store 45 def M3PipeF0 : ProcResource<1>; // FP #0 47 def M3UnitFMAC0 : ProcResource<1>; // FP multiplication 48 def M3UnitFADD0 : ProcResource<1>; // Simple FP 49 def M3UnitFCVT0 : ProcResource< [all...] |
| H A D | AArch64SchedExynosM4.td | 38 def M4UnitA : ProcResource<2>; // Simple integer 39 def M4UnitC : ProcResource<2>; // Simple and complex integer 41 def M4UnitD : ProcResource<1>; // Integer division (inside C0, serialized) 43 def M4UnitE : ProcResource<1>; // CRC (inside C0) 44 def M4UnitB : ProcResource<2>; // Branch 45 def M4UnitL0 : ProcResource<1>; // Load 46 def M4UnitS0 : ProcResource<1>; // Store 47 def M4PipeLS : ProcResource<1>; // Load/Store 49 def M4UnitL1 : ProcResource<1>; 50 def M4UnitS1 : ProcResource<1>; [all …]
|
| H A D | AArch64SchedKryo.td | 42 def KryoUnitXA : ProcResource<1>; // Type X(A) micro-ops 43 def KryoUnitXB : ProcResource<1>; // Type X(B) micro-ops 44 def KryoUnitYA : ProcResource<1>; // Type Y(A) micro-ops 45 def KryoUnitYB : ProcResource<1>; // Type Y(B) micro-ops 54 def KryoUnitLSA : ProcResource<1>; // Type LS(A) micro-ops 55 def KryoUnitLSB : ProcResource<1>; // Type LS(B) micro-ops
|
| /freebsd/contrib/llvm-project/llvm/tools/llvm-mca/Views/ |
| H A D | ResourcePressureView.cpp | 29 const MCProcResourceDesc &ProcResource = *SM.getProcResource(I); in ResourcePressureView() local 30 unsigned NumUnits = ProcResource.NumUnits; in ResourcePressureView() 32 if (ProcResource.SubUnitsIdxBegin || !NumUnits) in ResourcePressureView() 36 R2VIndex += ProcResource.NumUnits; in ResourcePressureView() 92 const MCProcResourceDesc &ProcResource = *SM.getProcResource(I); in printColumnNames() local 93 unsigned NumUnits = ProcResource.NumUnits; in printColumnNames() 95 if (ProcResource.SubUnitsIdxBegin || !NumUnits) in printColumnNames() 131 const MCProcResourceDesc &ProcResource = *SM.getProcResource(I); in printResourcePressurePerIter() local 132 unsigned NumUnits = ProcResource.NumUnits; in printResourcePressurePerIter() 134 if (ProcResource.SubUnitsIdxBegin || !NumUnits) in printResourcePressurePerIter() [all …]
|
| H A D | SchedulerStatistics.cpp | 140 const MCProcResourceDesc &ProcResource = *SM.getProcResource(I); in printSchedulerUsage() local 141 if (ProcResource.BufferSize <= 0) in printSchedulerUsage() 146 double AlmostFullThreshold = (double)(ProcResource.BufferSize * 4) / 5; in printSchedulerUsage() 150 FOS << ProcResource.Name; in printSchedulerUsage() 159 BU.MaxUsedSlots == static_cast<unsigned>(ProcResource.BufferSize)) in printSchedulerUsage() 165 FOS << ProcResource.BufferSize << '\n'; in printSchedulerUsage()
|
| H A D | InstructionInfoView.cpp | 64 const MCProcResourceDesc &ProcResource = *SM.getProcResource(I); in printView() local 65 unsigned NumUnits = ProcResource.NumUnits; in printView() 72 FOS << "- " << ProcResource.Name << ':' << NumUnits; in printView() 73 if (ProcResource.SubUnitsIdxBegin) { in printView() 76 FOS << SM.getProcResource(ProcResource.SubUnitsIdxBegin[U])->Name; in printView()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/PowerPC/ |
| H A D | PPCScheduleP9.td | 56 def DISPx02 : ProcResource<2>; 57 def DISPx13 : ProcResource<2>; 60 def DISPxab : ProcResource<2>; 62 def DISPb01 : ProcResource<2>; 76 def IP_AGEN : ProcResource<4>; 77 def IP_EXEC : ProcResource<4>; 78 def IP_EXECE : ProcResource<2> { 82 def IP_EXECO : ProcResource<2> { 89 def ALU : ProcResource<4>; 90 def ALUE : ProcResource< [all...] |
| H A D | PPCScheduleP10.td | 42 def P10_BF : ProcResource<4>; // Four Binary Floating Point pipelines. 43 def P10_BR : ProcResource<2>; // Two Branch pipelines. 44 def P10_CY : ProcResource<4>; // Four Crypto pipelines. 45 def P10_DF : ProcResource<1>; // One Decimal Floating Point pipelines. 46 def P10_DV : ProcResource<2>; // Two Fixed-point divide (DIV) pipelines. 47 def P10_DX : ProcResource<2>; // Two 128-bit fixed-point and BCD pipelines. 48 def P10_FX : ProcResource<4>; // Four ALU pipelines. 49 def P10_LD : ProcResource<2>; // Two Load pipelines. 50 def P10_MM : ProcResource<2>; // Two 512-bit SIMD matrix multiply engine pipelines. 51 def P10_PM : ProcResource< [all...] |
| H A D | PPCScheduleP7.td | 37 def P7_LSU_FXU: ProcResource<4>; 38 def P7_LSU: ProcResource<2> { 41 def P7_FXU: ProcResource<2> { 45 def P7_FPU: ProcResource<4>; 47 def P7_ScalarFPU: ProcResource<2> { 50 def P7_VectorFPU: ProcResource<2> { 54 def P7_VMX: ProcResource<1>; 55 def P7_VPM: ProcResource<1> { 59 def P7_VXS: ProcResource<1> { 62 def P7_DFU: ProcResource<1>; [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/MCA/Stages/ |
| H A D | InstructionTables.cpp | 34 const MCProcResourceDesc &ProcResource = *SM.getProcResource(Index); in execute() local 35 unsigned NumUnits = ProcResource.NumUnits; in execute() 36 if (!ProcResource.SubUnitsIdxBegin) { in execute() 50 unsigned SubUnitIdx = ProcResource.SubUnitsIdxBegin[I1]; in execute()
|
| /freebsd/contrib/llvm-project/llvm/tools/llvm-mca/ |
| H A D | PipelinePrinter.cpp | 86 const MCProcResourceDesc &ProcResource = *SM.getProcResource(I); in getJSONTargetInfo() local 87 unsigned NumUnits = ProcResource.NumUnits; in getJSONTargetInfo() 88 if (ProcResource.SubUnitsIdxBegin || !NumUnits) in getJSONTargetInfo() 92 std::string ResourceName = ProcResource.Name; in getJSONTargetInfo()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/Mips/ |
| H A D | MipsScheduleI6400.td | 31 def I6400AGEN : ProcResource<1>; 32 def I6400IssueLSU : ProcResource<1> { let Super = I6400AGEN; } 33 def I6400IssueALU1 : ProcResource<1> { let Super = I6400AGEN; } 34 def I6400CTRL : ProcResource<1>; 35 def I6400IssueCTU : ProcResource<1> { let Super = I6400CTRL; } 36 def I6400IssueALU0 : ProcResource<1> { let Super = I6400CTRL; } 37 def I6400MDU : ProcResource<1>; 38 def I6400FPU : ProcResource<3>; 39 def I6400FPUShort : ProcResource<1> { let Super = I6400FPU; } 40 def I6400FPULong : ProcResource<1> { let Super = I6400FPU; } [all …]
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/ARM/ |
| H A D | ARMScheduleM85.td | 39 def M85UnitLoadL : ProcResource<1> { let BufferSize = 0; } 40 def M85UnitLoadH : ProcResource<1> { let BufferSize = 0; } 42 def M85UnitStoreL : ProcResource<1> { let BufferSize = 0; } 43 def M85UnitStoreH : ProcResource<1> { let BufferSize = 0; } 45 def M85UnitALU : ProcResource<2> { let BufferSize = 0; } 46 def M85UnitShift1 : ProcResource<1> { let BufferSize = 0; } 47 def M85UnitShift2 : ProcResource<1> { let BufferSize = 0; } 48 def M85UnitMAC : ProcResource<1> { let BufferSize = 0; } 49 def M85UnitBranch : ProcResource<1> { let BufferSize = 0; } 50 def M85UnitVFPAL : ProcResource<1> { let BufferSize = 0; } [all …]
|
| H A D | ARMScheduleM7.td | 38 def M7UnitLoadL : ProcResource<1> { let BufferSize = 0; } 39 def M7UnitLoadH : ProcResource<1> { let BufferSize = 0; } 41 def M7UnitStore : ProcResource<1> { let BufferSize = 0; } 42 def M7UnitALU : ProcResource<2>; 43 def M7UnitShift1 : ProcResource<1> { let BufferSize = 0; } 44 def M7UnitShift2 : ProcResource<1> { let BufferSize = 0; } 45 def M7UnitMAC : ProcResource<1> { let BufferSize = 0; } 46 def M7UnitBranch : ProcResource<1> { let BufferSize = 0; } 47 def M7UnitVFP : ProcResource<1> { let BufferSize = 0; } 48 def M7UnitVPortL : ProcResource<1> { let BufferSize = 0; } [all …]
|