ΒΆllvm::Value* getShuffleReduction(
IRBuilder<>& Builder,
llvm::Value* Src,
unsigned int Op,
RecurrenceDescriptor::MinMaxRecurrenceKind
MinMaxKind =
RecurrenceDescriptor::MRK_Invalid,
ArrayRef<llvm::Value*> RedOps = None)
llvm::Value* getShuffleReduction(
IRBuilder<>& Builder,
llvm::Value* Src,
unsigned int Op,
RecurrenceDescriptor::MinMaxRecurrenceKind
MinMaxKind =
RecurrenceDescriptor::MRK_Invalid,
ArrayRef<llvm::Value*> RedOps = None)
Description
Generates a vector reduction using shufflevectors to reduce the value. Fast-math-flags are propagated using the IRBuilder's setting.
Declared at: llvm/include/llvm/Transforms/Utils/LoopUtils.h:310
Parameters
- IRBuilder<>& Builder
- llvm::Value* Src
- unsigned int Op
- RecurrenceDescriptor::MinMaxRecurrenceKind MinMaxKind = RecurrenceDescriptor::MRK_Invalid
- ArrayRef<llvm::Value*> RedOps = None