54 llvm::Function *oldFunc, llvm::Function *newFunc,
unsigned width,
55 llvm::ValueMap<
const llvm::Value *, std::vector<llvm::Value *>>
57 llvm::ValueMap<const llvm::Value *, llvm::WeakTrackingVH>
59 llvm::SmallPtrSetImpl<llvm::Value *> &toVectorize,
EnzymeLogic &Logic);
62 llvm::ValueMap<const llvm::Value *, std::vector<llvm::Value *>>
64 llvm::ValueMap<const llvm::Value *, llvm::WeakTrackingVH> &originalToNewFn;
65 llvm::SmallPtrSetImpl<llvm::Value *> &toVectorize;
70 llvm::Value *getNewOperand(
unsigned int i, llvm::Value *op);
InstructionBatcher(llvm::Function *oldFunc, llvm::Function *newFunc, unsigned width, llvm::ValueMap< const llvm::Value *, std::vector< llvm::Value * > > &vectorizedValues, llvm::ValueMap< const llvm::Value *, llvm::WeakTrackingVH > &originalToNewFn, llvm::SmallPtrSetImpl< llvm::Value * > &toVectorize, EnzymeLogic &Logic)