LLVM  8.0.1
Functions
IRBuilder.cpp File Reference
#include "llvm/IR/IRBuilder.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/None.h"
#include "llvm/IR/Constant.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/GlobalValue.h"
#include "llvm/IR/GlobalVariable.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/Operator.h"
#include "llvm/IR/Statepoint.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/Value.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/MathExtras.h"
#include <cassert>
#include <cstdint>
#include <vector>
Include dependency graph for IRBuilder.cpp:

Go to the source code of this file.

Functions

static CallInstcreateCallHelper (Value *Callee, ArrayRef< Value *> Ops, IRBuilderBase *Builder, const Twine &Name="", Instruction *FMFSource=nullptr)
 
static InvokeInstcreateInvokeHelper (Value *Invokee, BasicBlock *NormalDest, BasicBlock *UnwindDest, ArrayRef< Value *> Ops, IRBuilderBase *Builder, const Twine &Name="")
 
static CallInstgetReductionIntrinsic (IRBuilderBase *Builder, Intrinsic::ID ID, Value *Src)
 
template<typename T0 , typename T1 , typename T2 , typename T3 >
static std::vector< Value * > getStatepointArgs (IRBuilderBase &B, uint64_t ID, uint32_t NumPatchBytes, Value *ActualCallee, uint32_t Flags, ArrayRef< T0 > CallArgs, ArrayRef< T1 > TransitionArgs, ArrayRef< T2 > DeoptArgs, ArrayRef< T3 > GCArgs)
 
template<typename T0 , typename T1 , typename T2 , typename T3 >
static CallInstCreateGCStatepointCallCommon (IRBuilderBase *Builder, uint64_t ID, uint32_t NumPatchBytes, Value *ActualCallee, uint32_t Flags, ArrayRef< T0 > CallArgs, ArrayRef< T1 > TransitionArgs, ArrayRef< T2 > DeoptArgs, ArrayRef< T3 > GCArgs, const Twine &Name)
 
template<typename T0 , typename T1 , typename T2 , typename T3 >
static InvokeInstCreateGCStatepointInvokeCommon (IRBuilderBase *Builder, uint64_t ID, uint32_t NumPatchBytes, Value *ActualInvokee, BasicBlock *NormalDest, BasicBlock *UnwindDest, uint32_t Flags, ArrayRef< T0 > InvokeArgs, ArrayRef< T1 > TransitionArgs, ArrayRef< T2 > DeoptArgs, ArrayRef< T3 > GCArgs, const Twine &Name)
 

Function Documentation

◆ createCallHelper()

static CallInst* createCallHelper ( Value Callee,
ArrayRef< Value *>  Ops,
IRBuilderBase Builder,
const Twine Name = "",
Instruction FMFSource = nullptr 
)
static

◆ CreateGCStatepointCallCommon()

template<typename T0 , typename T1 , typename T2 , typename T3 >
static CallInst* CreateGCStatepointCallCommon ( IRBuilderBase Builder,
uint64_t  ID,
uint32_t  NumPatchBytes,
Value ActualCallee,
uint32_t  Flags,
ArrayRef< T0 >  CallArgs,
ArrayRef< T1 TransitionArgs,
ArrayRef< T2 >  DeoptArgs,
ArrayRef< T3 >  GCArgs,
const Twine Name 
)
static

◆ CreateGCStatepointInvokeCommon()

template<typename T0 , typename T1 , typename T2 , typename T3 >
static InvokeInst* CreateGCStatepointInvokeCommon ( IRBuilderBase Builder,
uint64_t  ID,
uint32_t  NumPatchBytes,
Value ActualInvokee,
BasicBlock NormalDest,
BasicBlock UnwindDest,
uint32_t  Flags,
ArrayRef< T0 >  InvokeArgs,
ArrayRef< T1 TransitionArgs,
ArrayRef< T2 >  DeoptArgs,
ArrayRef< T3 >  GCArgs,
const Twine Name 
)
static

◆ createInvokeHelper()

static InvokeInst* createInvokeHelper ( Value Invokee,
BasicBlock NormalDest,
BasicBlock UnwindDest,
ArrayRef< Value *>  Ops,
IRBuilderBase Builder,
const Twine Name = "" 
)
static

◆ getReductionIntrinsic()

static CallInst* getReductionIntrinsic ( IRBuilderBase Builder,
Intrinsic::ID  ID,
Value Src 
)
static

◆ getStatepointArgs()

template<typename T0 , typename T1 , typename T2 , typename T3 >
static std::vector<Value *> getStatepointArgs ( IRBuilderBase B,
uint64_t  ID,
uint32_t  NumPatchBytes,
Value ActualCallee,
uint32_t  Flags,
ArrayRef< T0 >  CallArgs,
ArrayRef< T1 TransitionArgs,
ArrayRef< T2 >  DeoptArgs,
ArrayRef< T3 >  GCArgs 
)
static