|
Enzyme main
|


Public Member Functions | |
| TruncateGenerator (ValueToValueMapTy &originalToNewFn, FloatTruncation truncation, Function *oldFunc, Function *newFunc, EnzymeLogic &Logic) | |
| void | checkHandled (llvm::Instruction &inst) |
| void | handleTrunc () |
| void | hendleIntToFloat () |
| void | handleFloatToInt () |
| void | visitInstruction (llvm::Instruction &inst) |
| Value * | truncate (IRBuilder<> &B, Value *v) |
| Value * | expand (IRBuilder<> &B, Value *v) |
| void | todo (llvm::Instruction &I) |
| void | visitAllocaInst (llvm::AllocaInst &I) |
| void | visitICmpInst (llvm::ICmpInst &I) |
| void | visitFCmpInst (llvm::FCmpInst &CI) |
| void | visitLoadInst (llvm::LoadInst &LI) |
| void | visitStoreInst (llvm::StoreInst &SI) |
| void | visitGetElementPtrInst (llvm::GetElementPtrInst &gep) |
| void | visitPHINode (llvm::PHINode &phi) |
| void | visitCastInst (llvm::CastInst &CI) |
| void | visitSelectInst (llvm::SelectInst &SI) |
| void | visitExtractElementInst (llvm::ExtractElementInst &EEI) |
| void | visitInsertElementInst (llvm::InsertElementInst &EEI) |
| void | visitShuffleVectorInst (llvm::ShuffleVectorInst &EEI) |
| void | visitExtractValueInst (llvm::ExtractValueInst &EEI) |
| void | visitInsertValueInst (llvm::InsertValueInst &EEI) |
| void | visitBinaryOperator (llvm::BinaryOperator &BO) |
| void | visitMemSetInst (llvm::MemSetInst &MS) |
| void | visitMemSetCommon (llvm::CallInst &MS) |
| void | visitMemTransferInst (llvm::MemTransferInst &MTI) |
| void | visitMemTransferCommon (llvm::Intrinsic::ID ID, llvm::MaybeAlign srcAlign, llvm::MaybeAlign dstAlign, llvm::CallInst &MTI, llvm::Value *orig_dst, llvm::Value *orig_src, llvm::Value *new_size, llvm::Value *isVolatile) |
| void | visitFenceInst (llvm::FenceInst &FI) |
| bool | handleIntrinsic (llvm::CallInst &CI, Intrinsic::ID ID) |
| void | visitIntrinsicInst (llvm::IntrinsicInst &II) |
| void | visitReturnInst (llvm::ReturnInst &I) |
| void | visitBranchInst (llvm::BranchInst &I) |
| void | visitSwitchInst (llvm::SwitchInst &I) |
| void | visitUnreachableInst (llvm::UnreachableInst &I) |
| void | visitLoadLike (llvm::Instruction &I, llvm::MaybeAlign alignment, llvm::Value *mask=nullptr, llvm::Value *orig_maskInit=nullptr) |
| void | visitCommonStore (llvm::Instruction &I, llvm::Value *orig_ptr, llvm::Value *orig_val, llvm::MaybeAlign prevalign, bool isVolatile, llvm::AtomicOrdering ordering, llvm::SyncScope::ID syncScope, llvm::Value *mask) |
| bool | handleAdjointForIntrinsic (llvm::Intrinsic::ID ID, llvm::Instruction &I, llvm::SmallVectorImpl< llvm::Value * > &orig_ops) |
| llvm::Value * | getNewFromOriginal (llvm::Value *v) |
| llvm::Instruction * | getNewFromOriginal (llvm::Instruction *v) |
| bool | handleKnownCalls (llvm::CallInst &call, llvm::Function *called, llvm::StringRef funcName, llvm::CallInst *const newCall) |
| Value * | GetShadow (RequestContext &ctx, Value *v) |
| void | visitCallInst (llvm::CallInst &CI) |
| void | visitFPTruncInst (FPTruncInst &I) |
| void | visitFPExtInst (FPExtInst &I) |
| void | visitFPToUIInst (FPToUIInst &I) |
| void | visitFPToSIInst (FPToSIInst &I) |
| void | visitUIToFPInst (UIToFPInst &I) |
| void | visitSIToFPInst (SIToFPInst &I) |
Public Member Functions inherited from TruncateUtils | |
| TruncateUtils (FloatTruncation truncation, Module *M) | |
| Type * | getFromType () |
| Type * | getToType () |
| CallInst * | createFPRTConstCall (llvm::IRBuilderBase &B, Value *V) |
| CallInst * | createFPRTNewCall (llvm::IRBuilderBase &B, Value *V) |
| CallInst * | createFPRTGetCall (llvm::IRBuilderBase &B, Value *V) |
| CallInst * | createFPRTDeleteCall (llvm::IRBuilderBase &B, Value *V) |
| CallInst * | createFPRTOpCall (llvm::IRBuilderBase &B, llvm::Instruction &I, llvm::Type *RetTy, SmallVectorImpl< Value * > &ArgsIn) |
Additional Inherited Members | |
Protected Attributes inherited from TruncateUtils | |
| FloatTruncation | truncation |
| llvm::Module * | M |
| Type * | fromType |
| Type * | toType |
| LLVMContext & | ctx |
Definition at line 5311 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5323 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5331 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5371 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5653 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5647 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5663 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5615 of file EnzymeLogic.cpp.
| void TruncateGenerator::handleFloatToInt | ( | ) |
|
inline |
Definition at line 5546 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5657 of file EnzymeLogic.cpp.
| void TruncateGenerator::handleTrunc | ( | ) |
| void TruncateGenerator::hendleIntToFloat | ( | ) |
|
inline |
Definition at line 5382 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5358 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5397 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5482 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5598 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5671 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5444 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5607 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5477 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5480 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5399 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5544 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5695 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5697 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5696 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5694 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5442 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5398 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5478 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5481 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5343 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5592 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5432 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5601 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5528 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5527 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5538 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5529 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5443 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5596 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5456 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5479 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5699 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5436 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5599 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5698 of file EnzymeLogic.cpp.
|
inline |
Definition at line 5600 of file EnzymeLogic.cpp.