reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1027 C.Insns = 0; 1028 C.NumRegs = 0; 1029 C.AddRecCost = 0; 1030 C.NumIVMuls = 0; 1031 C.NumBaseAdds = 0; 1032 C.ImmCost = 0; 1033 C.SetupCost = 0; 1034 C.ScaleCost = 0; 1044 return ((C.Insns | C.NumRegs | C.AddRecCost | C.NumIVMuls | C.NumBaseAdds 1044 return ((C.Insns | C.NumRegs | C.AddRecCost | C.NumIVMuls | C.NumBaseAdds 1044 return ((C.Insns | C.NumRegs | C.AddRecCost | C.NumIVMuls | C.NumBaseAdds 1044 return ((C.Insns | C.NumRegs | C.AddRecCost | C.NumIVMuls | C.NumBaseAdds 1044 return ((C.Insns | C.NumRegs | C.AddRecCost | C.NumIVMuls | C.NumBaseAdds 1045 | C.ImmCost | C.SetupCost | C.ScaleCost) != ~0u) 1045 | C.ImmCost | C.SetupCost | C.ScaleCost) != ~0u) 1045 | C.ImmCost | C.SetupCost | C.ScaleCost) != ~0u) 1046 || ((C.Insns & C.NumRegs & C.AddRecCost & C.NumIVMuls & C.NumBaseAdds 1046 || ((C.Insns & C.NumRegs & C.AddRecCost & C.NumIVMuls & C.NumBaseAdds 1046 || ((C.Insns & C.NumRegs & C.AddRecCost & C.NumIVMuls & C.NumBaseAdds 1046 || ((C.Insns & C.NumRegs & C.AddRecCost & C.NumIVMuls & C.NumBaseAdds 1046 || ((C.Insns & C.NumRegs & C.AddRecCost & C.NumIVMuls & C.NumBaseAdds 1047 & C.ImmCost & C.SetupCost & C.ScaleCost) == ~0u); 1047 & C.ImmCost & C.SetupCost & C.ScaleCost) == ~0u); 1047 & C.ImmCost & C.SetupCost & C.ScaleCost) == ~0u); 1053 return C.NumRegs == ~0u; 1255 ++C.NumRegs; 1281 C.AddRecCost += LoopCost; 1293 ++C.NumRegs; 1297 C.SetupCost += getSetupCost(Reg, SetupCostDepthLimit); 1299 C.SetupCost = std::min<unsigned>(C.SetupCost, 1 << 16); 1299 C.SetupCost = std::min<unsigned>(C.SetupCost, 1 << 16); 1301 C.NumIVMuls += isa<SCEVMulExpr>(Reg) && 1329 unsigned PrevAddRecCost = C.AddRecCost; 1330 unsigned PrevNumRegs = C.NumRegs; 1331 unsigned PrevNumBaseAdds = C.NumBaseAdds; 1356 C.NumBaseAdds += 1358 C.NumBaseAdds += (F.UnfoldedOffset != 0); 1361 C.ScaleCost += getScalingFactorCost(*TTI, LU, F, *L); 1368 C.ImmCost += 64; // Handle symbolic values conservatively. 1371 C.ImmCost += APInt(64, Offset, true).getMinSignedBits(); 1378 C.NumBaseAdds++; 1392 if (C.NumRegs > TTIRegNum) { 1396 C.Insns += (C.NumRegs - PrevNumRegs); 1396 C.Insns += (C.NumRegs - PrevNumRegs); 1398 C.Insns += (C.NumRegs - TTIRegNum); 1398 C.Insns += (C.NumRegs - TTIRegNum); 1413 C.Insns++; 1415 C.Insns += (C.AddRecCost - PrevAddRecCost); 1415 C.Insns += (C.AddRecCost - PrevAddRecCost); 1419 C.Insns += C.NumBaseAdds - PrevNumBaseAdds; 1419 C.Insns += C.NumBaseAdds - PrevNumBaseAdds; 1425 C.Insns = std::numeric_limits<unsigned>::max(); 1426 C.NumRegs = std::numeric_limits<unsigned>::max(); 1427 C.AddRecCost = std::numeric_limits<unsigned>::max(); 1428 C.NumIVMuls = std::numeric_limits<unsigned>::max(); 1429 C.NumBaseAdds = std::numeric_limits<unsigned>::max(); 1430 C.ImmCost = std::numeric_limits<unsigned>::max(); 1431 C.SetupCost = std::numeric_limits<unsigned>::max(); 1432 C.ScaleCost = std::numeric_limits<unsigned>::max(); 1438 C.Insns != Other.C.Insns) 1438 C.Insns != Other.C.Insns) 1439 return C.Insns < Other.C.Insns; 1439 return C.Insns < Other.C.Insns; 1440 return TTI->isLSRCostLess(C, Other.C); 1440 return TTI->isLSRCostLess(C, Other.C); 1446 OS << C.Insns << " instruction" << (C.Insns == 1 ? " " : "s "); 1446 OS << C.Insns << " instruction" << (C.Insns == 1 ? " " : "s "); 1447 OS << C.NumRegs << " reg" << (C.NumRegs == 1 ? "" : "s"); 1447 OS << C.NumRegs << " reg" << (C.NumRegs == 1 ? "" : "s"); 1448 if (C.AddRecCost != 0) 1449 OS << ", with addrec cost " << C.AddRecCost; 1450 if (C.NumIVMuls != 0) 1451 OS << ", plus " << C.NumIVMuls << " IV mul" 1452 << (C.NumIVMuls == 1 ? "" : "s"); 1453 if (C.NumBaseAdds != 0) 1454 OS << ", plus " << C.NumBaseAdds << " base add" 1455 << (C.NumBaseAdds == 1 ? "" : "s"); 1456 if (C.ScaleCost != 0) 1457 OS << ", plus " << C.ScaleCost << " scale cost"; 1458 if (C.ImmCost != 0) 1459 OS << ", plus " << C.ImmCost << " imm cost"; 1460 if (C.SetupCost != 0) 1461 OS << ", plus " << C.SetupCost << " setup cost";