struct IROutliner::InstructionAllowed
Declaration
struct IROutliner::InstructionAllowed : public InstVisitor { /* full declaration omitted */ };
Description
Custom InstVisitor to classify different instructions for whether it can be analyzed for similarity. This is needed as there may be instruction we can identify as having similarity, but are more complicated to outline.
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:354
Inherits from: InstVisitor
Member Variables
- public bool EnableBranches = false
- public bool EnableIndirectCalls = true
- public bool EnableIntrinsics = false
- public bool EnableMustTailCalls = false
Method Overview
- public InstructionAllowed()
- public bool IntrinsicInst(llvm::IntrinsicInst & II)
- public bool visitAllocaInst(llvm::AllocaInst & AI)
- public bool visitBranchInst(llvm::BranchInst & BI)
- public bool visitCallBrInst(llvm::CallBrInst & CBI)
- public bool visitCallInst(llvm::CallInst & CI)
- public bool visitDbgInfoIntrinsic(llvm::DbgInfoIntrinsic & DII)
- public bool visitFreezeInst(llvm::FreezeInst & CI)
- public bool visitFuncletPadInst(llvm::FuncletPadInst & FPI)
- public bool visitInstruction(llvm::Instruction & I)
- public bool visitInvokeInst(llvm::InvokeInst & II)
- public bool visitLandingPadInst(llvm::LandingPadInst & LPI)
- public bool visitPHINode(llvm::PHINode & PN)
- public bool visitTerminator(llvm::Instruction & I)
- public bool visitVAArgInst(llvm::VAArgInst & VI)
Methods
¶InstructionAllowed()
InstructionAllowed()
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:355
¶bool IntrinsicInst(llvm::IntrinsicInst& II)
bool IntrinsicInst(llvm::IntrinsicInst& II)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:375
Parameters
¶bool visitAllocaInst(llvm::AllocaInst& AI)
bool visitAllocaInst(llvm::AllocaInst& AI)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:360
Parameters
- llvm::AllocaInst& AI
¶bool visitBranchInst(llvm::BranchInst& BI)
bool visitBranchInst(llvm::BranchInst& BI)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:357
Parameters
- llvm::BranchInst& BI
¶bool visitCallBrInst(llvm::CallBrInst& CBI)
bool visitCallBrInst(llvm::CallBrInst& CBI)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:418
Parameters
- llvm::CallBrInst& CBI
¶bool visitCallInst(llvm::CallInst& CI)
bool visitCallInst(llvm::CallInst& CI)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:378
Parameters
- llvm::CallInst& CI
¶bool visitDbgInfoIntrinsic(
llvm::DbgInfoIntrinsic& DII)
bool visitDbgInfoIntrinsic(
llvm::DbgInfoIntrinsic& DII)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:372
Parameters
¶bool visitFreezeInst(llvm::FreezeInst& CI)
bool visitFreezeInst(llvm::FreezeInst& CI)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:414
Parameters
- llvm::FreezeInst& CI
¶bool visitFuncletPadInst(
llvm::FuncletPadInst& FPI)
bool visitFuncletPadInst(
llvm::FuncletPadInst& FPI)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:368
Parameters
- llvm::FuncletPadInst& FPI
¶bool visitInstruction(llvm::Instruction& I)
bool visitInstruction(llvm::Instruction& I)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:421
Parameters
¶bool visitInvokeInst(llvm::InvokeInst& II)
bool visitInvokeInst(llvm::InvokeInst& II)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:416
Parameters
- llvm::InvokeInst& II
¶bool visitLandingPadInst(
llvm::LandingPadInst& LPI)
bool visitLandingPadInst(
llvm::LandingPadInst& LPI)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:367
Parameters
- llvm::LandingPadInst& LPI
¶bool visitPHINode(llvm::PHINode& PN)
bool visitPHINode(llvm::PHINode& PN)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:358
Parameters
- llvm::PHINode& PN
¶bool visitTerminator(llvm::Instruction& I)
bool visitTerminator(llvm::Instruction& I)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:420
Parameters
¶bool visitVAArgInst(llvm::VAArgInst& VI)
bool visitVAArgInst(llvm::VAArgInst& VI)
Declared at: llvm/include/llvm/Transforms/IPO/IROutliner.h:364
Parameters
- llvm::VAArgInst& VI