@@ -824,7 +824,7 @@ bool llvm::hasIterationCountInvariantInParent(Loop *InnerLoop,
824824 return true ;
825825}
826826
827- Value *llvm::createMinMaxOp (IRBuilder<> &Builder,
827+ Value *llvm::createMinMaxOp (IRBuilderBase &Builder,
828828 RecurrenceDescriptor::MinMaxRecurrenceKind RK,
829829 Value *Left, Value *Right) {
830830 CmpInst::Predicate P = CmpInst::ICMP_NE;
@@ -853,7 +853,7 @@ Value *llvm::createMinMaxOp(IRBuilder<> &Builder,
853853
854854 // We only match FP sequences that are 'fast', so we can unconditionally
855855 // set it on any generated instructions.
856- IRBuilder<> ::FastMathFlagGuard FMFG (Builder);
856+ IRBuilderBase ::FastMathFlagGuard FMFG (Builder);
857857 FastMathFlags FMF;
858858 FMF.setFast ();
859859 Builder.setFastMathFlags (FMF);
@@ -871,7 +871,7 @@ Value *llvm::createMinMaxOp(IRBuilder<> &Builder,
871871
872872// Helper to generate an ordered reduction.
873873Value *
874- llvm::getOrderedReduction (IRBuilder<> &Builder, Value *Acc, Value *Src,
874+ llvm::getOrderedReduction (IRBuilderBase &Builder, Value *Acc, Value *Src,
875875 unsigned Op,
876876 RecurrenceDescriptor::MinMaxRecurrenceKind MinMaxKind,
877877 ArrayRef<Value *> RedOps) {
@@ -902,7 +902,7 @@ llvm::getOrderedReduction(IRBuilder<> &Builder, Value *Acc, Value *Src,
902902
903903// Helper to generate a log2 shuffle reduction.
904904Value *
905- llvm::getShuffleReduction (IRBuilder<> &Builder, Value *Src, unsigned Op,
905+ llvm::getShuffleReduction (IRBuilderBase &Builder, Value *Src, unsigned Op,
906906 RecurrenceDescriptor::MinMaxRecurrenceKind MinMaxKind,
907907 ArrayRef<Value *> RedOps) {
908908 unsigned VF = Src->getType ()->getVectorNumElements ();
@@ -950,7 +950,7 @@ llvm::getShuffleReduction(IRBuilder<> &Builder, Value *Src, unsigned Op,
950950// / Create a simple vector reduction specified by an opcode and some
951951// / flags (if generating min/max reductions).
952952Value *llvm::createSimpleTargetReduction (
953- IRBuilder<> &Builder, const TargetTransformInfo *TTI, unsigned Opcode,
953+ IRBuilderBase &Builder, const TargetTransformInfo *TTI, unsigned Opcode,
954954 Value *Src, TargetTransformInfo::ReductionFlags Flags,
955955 ArrayRef<Value *> RedOps) {
956956 assert (isa<VectorType>(Src->getType ()) && " Type must be a vector" );
@@ -1021,7 +1021,7 @@ Value *llvm::createSimpleTargetReduction(
10211021}
10221022
10231023// / Create a vector reduction using a given recurrence descriptor.
1024- Value *llvm::createTargetReduction (IRBuilder<> &B,
1024+ Value *llvm::createTargetReduction (IRBuilderBase &B,
10251025 const TargetTransformInfo *TTI,
10261026 RecurrenceDescriptor &Desc, Value *Src,
10271027 bool NoNaN) {
@@ -1033,7 +1033,7 @@ Value *llvm::createTargetReduction(IRBuilder<> &B,
10331033
10341034 // All ops in the reduction inherit fast-math-flags from the recurrence
10351035 // descriptor.
1036- IRBuilder<> ::FastMathFlagGuard FMFGuard (B);
1036+ IRBuilderBase ::FastMathFlagGuard FMFGuard (B);
10371037 B.setFastMathFlags (Desc.getFastMathFlags ());
10381038
10391039 switch (RecKind) {
0 commit comments