Lines Matching refs:FPI
569 void visitConstrainedFPIntrinsic(ConstrainedFPIntrinsic &FPI);
585 void visitFuncletPadInst(FuncletPadInst &FPI);
4234 if (auto *FPI = dyn_cast<FuncletPadInst>(EHPad)) in getParentPad() local
4235 return FPI->getParentPad(); in getParentPad()
4421 void Verifier::visitFuncletPadInst(FuncletPadInst &FPI) { in visitFuncletPadInst() argument
4424 SmallVector<FuncletPadInst *, 8> Worklist({&FPI}); in visitFuncletPadInst()
4479 if (ExitedPad == &FPI) { in visitFuncletPadInst()
4484 UnresolvedAncestorPad = &FPI; in visitFuncletPadInst()
4499 UnwindPad = ConstantTokenNone::get(FPI.getContext()); in visitFuncletPadInst()
4501 UnresolvedAncestorPad = &FPI; in visitFuncletPadInst()
4512 &FPI, U, FirstUser); in visitFuncletPadInst()
4517 if (isa<CleanupPadInst>(&FPI) && !isa<ConstantTokenNone>(UnwindPad) && in visitFuncletPadInst()
4518 getParentPad(UnwindPad) == getParentPad(&FPI)) in visitFuncletPadInst()
4519 SiblingFuncletInfo[&FPI] = cast<Instruction>(U); in visitFuncletPadInst()
4524 if (CurrentPad != &FPI) in visitFuncletPadInst()
4532 assert(CurrentPad == &FPI); in visitFuncletPadInst()
4564 if (auto *CatchSwitch = dyn_cast<CatchSwitchInst>(FPI.getParentPad())) { in visitFuncletPadInst()
4570 SwitchUnwindPad = ConstantTokenNone::get(FPI.getContext()); in visitFuncletPadInst()
4574 &FPI, FirstUser, CatchSwitch); in visitFuncletPadInst()
4578 visitInstruction(FPI); in visitFuncletPadInst()
6255 void Verifier::visitConstrainedFPIntrinsic(ConstrainedFPIntrinsic &FPI) { in visitConstrainedFPIntrinsic() argument
6258 switch (FPI.getIntrinsicID()) { in visitConstrainedFPIntrinsic()
6270 if (isa<ConstrainedFPCmpIntrinsic>(FPI)) in visitConstrainedFPIntrinsic()
6272 Check((FPI.arg_size() == NumOperands), in visitConstrainedFPIntrinsic()
6273 "invalid arguments for constrained FP intrinsic", &FPI); in visitConstrainedFPIntrinsic()
6275 switch (FPI.getIntrinsicID()) { in visitConstrainedFPIntrinsic()
6278 Type *ValTy = FPI.getArgOperand(0)->getType(); in visitConstrainedFPIntrinsic()
6279 Type *ResultTy = FPI.getType(); in visitConstrainedFPIntrinsic()
6281 "Intrinsic does not support vectors", &FPI); in visitConstrainedFPIntrinsic()
6287 Type *ValTy = FPI.getArgOperand(0)->getType(); in visitConstrainedFPIntrinsic()
6288 Type *ResultTy = FPI.getType(); in visitConstrainedFPIntrinsic()
6290 "Intrinsic does not support vectors", &FPI); in visitConstrainedFPIntrinsic()
6296 auto Pred = cast<ConstrainedFPCmpIntrinsic>(&FPI)->getPredicate(); in visitConstrainedFPIntrinsic()
6298 "invalid predicate for constrained FP comparison intrinsic", &FPI); in visitConstrainedFPIntrinsic()
6304 Value *Operand = FPI.getArgOperand(0); in visitConstrainedFPIntrinsic()
6307 "Intrinsic first argument must be floating point", &FPI); in visitConstrainedFPIntrinsic()
6312 Operand = &FPI; in visitConstrainedFPIntrinsic()
6314 "Intrinsic first argument and result disagree on vector use", &FPI); in visitConstrainedFPIntrinsic()
6316 "Intrinsic result must be an integer", &FPI); in visitConstrainedFPIntrinsic()
6320 &FPI); in visitConstrainedFPIntrinsic()
6327 Value *Operand = FPI.getArgOperand(0); in visitConstrainedFPIntrinsic()
6330 "Intrinsic first argument must be integer", &FPI); in visitConstrainedFPIntrinsic()
6335 Operand = &FPI; in visitConstrainedFPIntrinsic()
6337 "Intrinsic first argument and result disagree on vector use", &FPI); in visitConstrainedFPIntrinsic()
6339 "Intrinsic result must be a floating point", &FPI); in visitConstrainedFPIntrinsic()
6343 &FPI); in visitConstrainedFPIntrinsic()
6349 Value *Operand = FPI.getArgOperand(0); in visitConstrainedFPIntrinsic()
6351 Value *Result = &FPI; in visitConstrainedFPIntrinsic()
6354 "Intrinsic first argument must be FP or FP vector", &FPI); in visitConstrainedFPIntrinsic()
6356 "Intrinsic result must be FP or FP vector", &FPI); in visitConstrainedFPIntrinsic()
6358 "Intrinsic first argument and result disagree on vector use", &FPI); in visitConstrainedFPIntrinsic()
6363 &FPI); in visitConstrainedFPIntrinsic()
6365 if (FPI.getIntrinsicID() == Intrinsic::experimental_constrained_fptrunc) { in visitConstrainedFPIntrinsic()
6368 &FPI); in visitConstrainedFPIntrinsic()
6372 &FPI); in visitConstrainedFPIntrinsic()
6386 Check(FPI.getExceptionBehavior().has_value(), in visitConstrainedFPIntrinsic()
6387 "invalid exception behavior argument", &FPI); in visitConstrainedFPIntrinsic()
6389 Check(FPI.getRoundingMode().has_value(), "invalid rounding mode argument", in visitConstrainedFPIntrinsic()
6390 &FPI); in visitConstrainedFPIntrinsic()