Lines Matching defs:TTI
357 /// reported as lower by TTI.
358 static bool tryToFPToSat(Instruction &I, TargetTransformInfo &TTI) {
383 InstructionCost SatCost = TTI.getIntrinsicInstrCost(
385 TTI::TCK_RecipThroughput);
386 SatCost += TTI.getCastInstrCost(Instruction::SExt, IntTy, SatTy,
387 TTI::CastContextHint::None,
388 TTI::TCK_RecipThroughput);
390 InstructionCost MinMaxCost = TTI.getCastInstrCost(
391 Instruction::FPToSI, IntTy, FpTy, TTI::CastContextHint::None,
392 TTI::TCK_RecipThroughput);
393 MinMaxCost += TTI.getIntrinsicInstrCost(
395 TTI::TCK_RecipThroughput);
396 MinMaxCost += TTI.getIntrinsicInstrCost(
398 TTI::TCK_RecipThroughput);
414 static bool foldSqrt(CallInst *Call, LibFunc Func, TargetTransformInfo &TTI,
428 if (TTI.haveFastSqrt(Ty) &&
781 TargetTransformInfo &TTI, AliasAnalysis &AA,
795 // TTI based checks if we want to proceed with wider load
796 bool Allowed = TTI.isTypeLegal(WiderType);
802 Allowed = TTI.allowsMisalignedMemoryAccesses(I.getContext(), LOps.LoadSize,
1185 static bool foldLibCalls(Instruction &I, TargetTransformInfo &TTI,
1209 return foldSqrt(CI, LF, TTI, TLI, AC, DT);
1232 TargetTransformInfo &TTI,
1252 MadeChange |= tryToFPToSat(I, TTI);
1254 MadeChange |= foldConsecutiveLoads(I, DL, TTI, AA, DT);
1259 MadeChange |= foldLibCalls(I, TTI, TLI, AC, DT, DL, MadeCFGChange);
1273 static bool runImpl(Function &F, AssumptionCache &AC, TargetTransformInfo &TTI,
1280 MadeChange |= foldUnusualPatterns(F, DT, TTI, TLI, AA, AC, MadeCFGChange);
1289 auto &TTI = AM.getResult<TargetIRAnalysis>(F);
1292 if (!runImpl(F, AC, TTI, TLI, DT, AA, MadeCFGChange)) {