LLVM 22.0.0git
DataScalarizerVisitor Class Reference
Inheritance diagram for DataScalarizerVisitor:
[legend]

Public Member Functions

 DataScalarizerVisitor ()
bool visit (Function &F)
bool visitAllocaInst (AllocaInst &AI)
bool visitInstruction (Instruction &I)
bool visitSelectInst (SelectInst &SI)
bool visitICmpInst (ICmpInst &ICI)
bool visitFCmpInst (FCmpInst &FCI)
bool visitUnaryOperator (UnaryOperator &UO)
bool visitBinaryOperator (BinaryOperator &BO)
bool visitGetElementPtrInst (GetElementPtrInst &GEPI)
bool visitCastInst (CastInst &CI)
bool visitBitCastInst (BitCastInst &BCI)
bool visitInsertElementInst (InsertElementInst &IEI)
bool visitExtractElementInst (ExtractElementInst &EEI)
bool visitShuffleVectorInst (ShuffleVectorInst &SVI)
bool visitPHINode (PHINode &PHI)
bool visitLoadInst (LoadInst &LI)
bool visitStoreInst (StoreInst &SI)
bool visitCallInst (CallInst &ICI)
bool visitFreezeInst (FreezeInst &FI)
Public Member Functions inherited from llvm::InstVisitor< DataScalarizerVisitor, bool >
void visit (Iterator Start, Iterator End)
void visitModule (Module &M)
void visitFunction (Function &F)
void visitBasicBlock (BasicBlock &BB)
bool visitICmpInst (ICmpInst &I)
bool visitFCmpInst (FCmpInst &I)
bool visitAllocaInst (AllocaInst &I)
bool visitLoadInst (LoadInst &I)
bool visitStoreInst (StoreInst &I)
bool visitAtomicCmpXchgInst (AtomicCmpXchgInst &I)
bool visitAtomicRMWInst (AtomicRMWInst &I)
bool visitFenceInst (FenceInst &I)
bool visitGetElementPtrInst (GetElementPtrInst &I)
bool visitPHINode (PHINode &I)
bool visitTruncInst (TruncInst &I)
bool visitZExtInst (ZExtInst &I)
bool visitSExtInst (SExtInst &I)
bool visitFPTruncInst (FPTruncInst &I)
bool visitFPExtInst (FPExtInst &I)
bool visitFPToUIInst (FPToUIInst &I)
bool visitFPToSIInst (FPToSIInst &I)
bool visitUIToFPInst (UIToFPInst &I)
bool visitSIToFPInst (SIToFPInst &I)
bool visitPtrToIntInst (PtrToIntInst &I)
bool visitPtrToAddrInst (PtrToAddrInst &I)
bool visitIntToPtrInst (IntToPtrInst &I)
bool visitBitCastInst (BitCastInst &I)
bool visitAddrSpaceCastInst (AddrSpaceCastInst &I)
bool visitSelectInst (SelectInst &I)
bool visitVAArgInst (VAArgInst &I)
bool visitExtractElementInst (ExtractElementInst &I)
bool visitInsertElementInst (InsertElementInst &I)
bool visitShuffleVectorInst (ShuffleVectorInst &I)
bool visitExtractValueInst (ExtractValueInst &I)
bool visitInsertValueInst (InsertValueInst &I)
bool visitLandingPadInst (LandingPadInst &I)
bool visitFuncletPadInst (FuncletPadInst &I)
bool visitCleanupPadInst (CleanupPadInst &I)
bool visitCatchPadInst (CatchPadInst &I)
bool visitFreezeInst (FreezeInst &I)
bool visitMemSetInst (MemSetInst &I)
bool visitMemSetPatternInst (MemSetPatternInst &I)
bool visitMemCpyInst (MemCpyInst &I)
bool visitMemMoveInst (MemMoveInst &I)
bool visitMemTransferInst (MemTransferInst &I)
bool visitMemIntrinsic (MemIntrinsic &I)
bool visitVAStartInst (VAStartInst &I)
bool visitVAEndInst (VAEndInst &I)
bool visitVACopyInst (VACopyInst &I)
bool visitIntrinsicInst (IntrinsicInst &I)
bool visitCallInst (CallInst &I)
bool visitInvokeInst (InvokeInst &I)
bool visitCallBrInst (CallBrInst &I)
bool visitReturnInst (ReturnInst &I)
bool visitBranchInst (BranchInst &I)
bool visitSwitchInst (SwitchInst &I)
bool visitIndirectBrInst (IndirectBrInst &I)
bool visitResumeInst (ResumeInst &I)
bool visitUnreachableInst (UnreachableInst &I)
bool visitCleanupReturnInst (CleanupReturnInst &I)
bool visitCatchReturnInst (CatchReturnInst &I)
bool visitCatchSwitchInst (CatchSwitchInst &I)
bool visitTerminator (Instruction &I)
bool visitCastInst (CastInst &I)
bool visitUnaryOperator (UnaryOperator &I)
bool visitBinaryOperator (BinaryOperator &I)
bool visitCmpInst (CmpInst &I)
bool visitUnaryInstruction (UnaryInstruction &I)
bool visitCallBase (CallBase &I)
void visitInstruction (Instruction &I)

Friends

bool findAndReplaceVectors (llvm::Module &M)

Detailed Description

Definition at line 57 of file DXILDataScalarization.cpp.

Constructor & Destructor Documentation

◆ DataScalarizerVisitor()

DataScalarizerVisitor::DataScalarizerVisitor ( )
inline

Definition at line 59 of file DXILDataScalarization.cpp.

Referenced by findAndReplaceVectors.

Member Function Documentation

◆ visit()

bool DataScalarizerVisitor::visit ( Function & F)

◆ visitAllocaInst()

◆ visitBinaryOperator()

bool DataScalarizerVisitor::visitBinaryOperator ( BinaryOperator & BO)
inline

Definition at line 69 of file DXILDataScalarization.cpp.

◆ visitBitCastInst()

bool DataScalarizerVisitor::visitBitCastInst ( BitCastInst & BCI)
inline

Definition at line 72 of file DXILDataScalarization.cpp.

◆ visitCallInst()

bool DataScalarizerVisitor::visitCallInst ( CallInst & ICI)
inline

Definition at line 79 of file DXILDataScalarization.cpp.

◆ visitCastInst()

bool DataScalarizerVisitor::visitCastInst ( CastInst & CI)
inline

Definition at line 71 of file DXILDataScalarization.cpp.

◆ visitExtractElementInst()

bool DataScalarizerVisitor::visitExtractElementInst ( ExtractElementInst & EEI)

◆ visitFCmpInst()

bool DataScalarizerVisitor::visitFCmpInst ( FCmpInst & FCI)
inline

Definition at line 67 of file DXILDataScalarization.cpp.

◆ visitFreezeInst()

bool DataScalarizerVisitor::visitFreezeInst ( FreezeInst & FI)
inline

Definition at line 80 of file DXILDataScalarization.cpp.

◆ visitGetElementPtrInst()

◆ visitICmpInst()

bool DataScalarizerVisitor::visitICmpInst ( ICmpInst & ICI)
inline

Definition at line 66 of file DXILDataScalarization.cpp.

◆ visitInsertElementInst()

bool DataScalarizerVisitor::visitInsertElementInst ( InsertElementInst & IEI)

Definition at line 270 of file DXILDataScalarization.cpp.

References llvm::User::getOperand(), and llvm::isa().

◆ visitInstruction()

bool DataScalarizerVisitor::visitInstruction ( Instruction & I)
inline

Definition at line 64 of file DXILDataScalarization.cpp.

References I.

◆ visitLoadInst()

◆ visitPHINode()

bool DataScalarizerVisitor::visitPHINode ( PHINode & PHI)
inline

Definition at line 76 of file DXILDataScalarization.cpp.

References PHI.

◆ visitSelectInst()

bool DataScalarizerVisitor::visitSelectInst ( SelectInst & SI)
inline

Definition at line 65 of file DXILDataScalarization.cpp.

◆ visitShuffleVectorInst()

bool DataScalarizerVisitor::visitShuffleVectorInst ( ShuffleVectorInst & SVI)
inline

Definition at line 75 of file DXILDataScalarization.cpp.

◆ visitStoreInst()

◆ visitUnaryOperator()

bool DataScalarizerVisitor::visitUnaryOperator ( UnaryOperator & UO)
inline

Definition at line 68 of file DXILDataScalarization.cpp.

◆ findAndReplaceVectors


The documentation for this class was generated from the following file: