LLVM API Documentation

Public Member Functions
llvm::NoFolder Class Reference

NoFolder - Create "constants" (actually, instructions) with no folding. More...

#include <NoFolder.h>

List of all members.

Public Member Functions

 NoFolder ()
Instruction * CreateAdd (Constant *LHS, Constant *RHS, bool HasNUW=false, bool HasNSW=false) const
Instruction * CreateNSWAdd (Constant *LHS, Constant *RHS) const
Instruction * CreateNUWAdd (Constant *LHS, Constant *RHS) const
Instruction * CreateFAdd (Constant *LHS, Constant *RHS) const
Instruction * CreateSub (Constant *LHS, Constant *RHS, bool HasNUW=false, bool HasNSW=false) const
Instruction * CreateNSWSub (Constant *LHS, Constant *RHS) const
Instruction * CreateNUWSub (Constant *LHS, Constant *RHS) const
Instruction * CreateFSub (Constant *LHS, Constant *RHS) const
Instruction * CreateMul (Constant *LHS, Constant *RHS, bool HasNUW=false, bool HasNSW=false) const
Instruction * CreateNSWMul (Constant *LHS, Constant *RHS) const
Instruction * CreateNUWMul (Constant *LHS, Constant *RHS) const
Instruction * CreateFMul (Constant *LHS, Constant *RHS) const
Instruction * CreateUDiv (Constant *LHS, Constant *RHS, bool isExact=false) const
Instruction * CreateExactUDiv (Constant *LHS, Constant *RHS) const
Instruction * CreateSDiv (Constant *LHS, Constant *RHS, bool isExact=false) const
Instruction * CreateExactSDiv (Constant *LHS, Constant *RHS) const
Instruction * CreateFDiv (Constant *LHS, Constant *RHS) const
Instruction * CreateURem (Constant *LHS, Constant *RHS) const
Instruction * CreateSRem (Constant *LHS, Constant *RHS) const
Instruction * CreateFRem (Constant *LHS, Constant *RHS) const
Instruction * CreateShl (Constant *LHS, Constant *RHS, bool HasNUW=false, bool HasNSW=false) const
Instruction * CreateLShr (Constant *LHS, Constant *RHS, bool isExact=false) const
Instruction * CreateAShr (Constant *LHS, Constant *RHS, bool isExact=false) const
Instruction * CreateAnd (Constant *LHS, Constant *RHS) const
Instruction * CreateOr (Constant *LHS, Constant *RHS) const
Instruction * CreateXor (Constant *LHS, Constant *RHS) const
Instruction * CreateBinOp (Instruction::BinaryOps Opc, Constant *LHS, Constant *RHS) const
Instruction * CreateNeg (Constant *C, bool HasNUW=false, bool HasNSW=false) const
Instruction * CreateNSWNeg (Constant *C) const
Instruction * CreateNUWNeg (Constant *C) const
Instruction * CreateFNeg (Constant *C) const
Instruction * CreateNot (Constant *C) const
Constant * CreateGetElementPtr (Constant *C, ArrayRef< Constant * > IdxList) const
Constant * CreateGetElementPtr (Constant *C, Constant *Idx) const
Instruction * CreateGetElementPtr (Constant *C, ArrayRef< Value * > IdxList) const
Constant * CreateInBoundsGetElementPtr (Constant *C, ArrayRef< Constant * > IdxList) const
Constant * CreateInBoundsGetElementPtr (Constant *C, Constant *Idx) const
Instruction * CreateInBoundsGetElementPtr (Constant *C, ArrayRef< Value * > IdxList) const
Instruction * CreateCast (Instruction::CastOps Op, Constant *C, Type *DestTy) const
Instruction * CreatePointerCast (Constant *C, Type *DestTy) const
Instruction * CreateIntCast (Constant *C, Type *DestTy, bool isSigned) const
Instruction * CreateFPCast (Constant *C, Type *DestTy) const
Instruction * CreateBitCast (Constant *C, Type *DestTy) const
Instruction * CreateIntToPtr (Constant *C, Type *DestTy) const
Instruction * CreatePtrToInt (Constant *C, Type *DestTy) const
Instruction * CreateZExtOrBitCast (Constant *C, Type *DestTy) const
Instruction * CreateSExtOrBitCast (Constant *C, Type *DestTy) const
Instruction * CreateTruncOrBitCast (Constant *C, Type *DestTy) const
Instruction * CreateICmp (CmpInst::Predicate P, Constant *LHS, Constant *RHS) const
Instruction * CreateFCmp (CmpInst::Predicate P, Constant *LHS, Constant *RHS) const
Instruction * CreateSelect (Constant *C, Constant *True, Constant *False) const
Instruction * CreateExtractElement (Constant *Vec, Constant *Idx) const
Instruction * CreateInsertElement (Constant *Vec, Constant *NewElt, Constant *Idx) const
Instruction * CreateShuffleVector (Constant *V1, Constant *V2, Constant *Mask) const
Instruction * CreateExtractValue (Constant *Agg, ArrayRef< unsigned > IdxList) const
Instruction * CreateInsertValue (Constant *Agg, Constant *Val, ArrayRef< unsigned > IdxList) const

Detailed Description

NoFolder - Create "constants" (actually, instructions) with no folding.

Definition at line 32 of file NoFolder.h.


Constructor & Destructor Documentation

llvm::NoFolder::NoFolder ( ) [inline, explicit]

Definition at line 34 of file NoFolder.h.


Member Function Documentation

Instruction* llvm::NoFolder::CreateAdd ( Constant *  LHS,
Constant *  RHS,
bool  HasNUW = false,
bool  HasNSW = false 
) const [inline]
Instruction* llvm::NoFolder::CreateAnd ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 137 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateAShr ( Constant *  LHS,
Constant *  RHS,
bool  isExact = false 
) const [inline]

Definition at line 131 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateBinOp ( Instruction::BinaryOps  Opc,
Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 147 of file NoFolder.h.

References llvm::BinaryOperator::Create().

Instruction* llvm::NoFolder::CreateBitCast ( Constant *  C,
Type *  DestTy 
) const [inline]

Definition at line 229 of file NoFolder.h.

References CreateCast().

Instruction* llvm::NoFolder::CreateCast ( Instruction::CastOps  Op,
Constant *  C,
Type *  DestTy 
) const [inline]

Definition at line 214 of file NoFolder.h.

References llvm::CastInst::Create().

Referenced by CreateBitCast(), CreateIntToPtr(), and CreatePtrToInt().

Instruction* llvm::NoFolder::CreateExactSDiv ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 103 of file NoFolder.h.

Referenced by CreateSDiv().

Instruction* llvm::NoFolder::CreateExactUDiv ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 94 of file NoFolder.h.

Referenced by CreateUDiv().

Instruction* llvm::NoFolder::CreateExtractElement ( Constant *  Vec,
Constant *  Idx 
) const [inline]

Definition at line 271 of file NoFolder.h.

References llvm::ExtractElementInst::Create().

Instruction* llvm::NoFolder::CreateExtractValue ( Constant *  Agg,
ArrayRef< unsigned >  IdxList 
) const [inline]

Definition at line 285 of file NoFolder.h.

References llvm::ExtractValueInst::Create().

Instruction* llvm::NoFolder::CreateFAdd ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 53 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateFCmp ( CmpInst::Predicate  P,
Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 257 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateFDiv ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 106 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateFMul ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 85 of file NoFolder.h.

Definition at line 169 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateFPCast ( Constant *  C,
Type *  DestTy 
) const [inline]

Definition at line 225 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateFRem ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 115 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateFSub ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 69 of file NoFolder.h.

Constant* llvm::NoFolder::CreateGetElementPtr ( Constant *  C,
ArrayRef< Constant * >  IdxList 
) const [inline]

Definition at line 180 of file NoFolder.h.

References llvm::ConstantExpr::getGetElementPtr().

Constant* llvm::NoFolder::CreateGetElementPtr ( Constant *  C,
Constant *  Idx 
) const [inline]

Definition at line 184 of file NoFolder.h.

References llvm::ConstantExpr::getGetElementPtr().

Instruction* llvm::NoFolder::CreateGetElementPtr ( Constant *  C,
ArrayRef< Value * >  IdxList 
) const [inline]

Definition at line 190 of file NoFolder.h.

References llvm::GetElementPtrInst::Create().

Instruction* llvm::NoFolder::CreateICmp ( CmpInst::Predicate  P,
Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 253 of file NoFolder.h.

Constant* llvm::NoFolder::CreateInBoundsGetElementPtr ( Constant *  C,
ArrayRef< Constant * >  IdxList 
) const [inline]

Definition at line 195 of file NoFolder.h.

References llvm::ConstantExpr::getInBoundsGetElementPtr().

Definition at line 199 of file NoFolder.h.

References llvm::ConstantExpr::getInBoundsGetElementPtr().

Instruction* llvm::NoFolder::CreateInBoundsGetElementPtr ( Constant *  C,
ArrayRef< Value * >  IdxList 
) const [inline]

Definition at line 205 of file NoFolder.h.

References llvm::GetElementPtrInst::CreateInBounds().

Instruction* llvm::NoFolder::CreateInsertElement ( Constant *  Vec,
Constant *  NewElt,
Constant *  Idx 
) const [inline]

Definition at line 275 of file NoFolder.h.

References llvm::InsertElementInst::Create().

Instruction* llvm::NoFolder::CreateInsertValue ( Constant *  Agg,
Constant *  Val,
ArrayRef< unsigned >  IdxList 
) const [inline]

Definition at line 290 of file NoFolder.h.

References llvm::InsertValueInst::Create().

Instruction* llvm::NoFolder::CreateIntCast ( Constant *  C,
Type *  DestTy,
bool  isSigned 
) const [inline]

Definition at line 221 of file NoFolder.h.

References llvm::CastInst::CreateIntegerCast().

Instruction* llvm::NoFolder::CreateIntToPtr ( Constant *  C,
Type *  DestTy 
) const [inline]

Definition at line 232 of file NoFolder.h.

References CreateCast(), and llvm::IntToPtr.

Instruction* llvm::NoFolder::CreateLShr ( Constant *  LHS,
Constant *  RHS,
bool  isExact = false 
) const [inline]

Definition at line 125 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateMul ( Constant *  LHS,
Constant *  RHS,
bool  HasNUW = false,
bool  HasNSW = false 
) const [inline]
Instruction* llvm::NoFolder::CreateNeg ( Constant *  C,
bool  HasNUW = false,
bool  HasNSW = false 
) const [inline]

Definition at line 172 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateNSWAdd ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 47 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateNSWMul ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 79 of file NoFolder.h.

Definition at line 163 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateNSWSub ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 63 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateNUWAdd ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 50 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateNUWMul ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 82 of file NoFolder.h.

Definition at line 166 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateNUWSub ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 66 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateOr ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 140 of file NoFolder.h.

Instruction* llvm::NoFolder::CreatePointerCast ( Constant *  C,
Type *  DestTy 
) const [inline]

Definition at line 218 of file NoFolder.h.

Instruction* llvm::NoFolder::CreatePtrToInt ( Constant *  C,
Type *  DestTy 
) const [inline]

Definition at line 235 of file NoFolder.h.

References CreateCast().

Instruction* llvm::NoFolder::CreateSDiv ( Constant *  LHS,
Constant *  RHS,
bool  isExact = false 
) const [inline]

Definition at line 97 of file NoFolder.h.

References CreateExactSDiv().

Instruction* llvm::NoFolder::CreateSelect ( Constant *  C,
Constant *  True,
Constant *  False 
) const [inline]

Definition at line 266 of file NoFolder.h.

References llvm::SelectInst::Create().

Instruction* llvm::NoFolder::CreateSExtOrBitCast ( Constant *  C,
Type *  DestTy 
) const [inline]

Definition at line 241 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateShl ( Constant *  LHS,
Constant *  RHS,
bool  HasNUW = false,
bool  HasNSW = false 
) const [inline]
Instruction* llvm::NoFolder::CreateShuffleVector ( Constant *  V1,
Constant *  V2,
Constant *  Mask 
) const [inline]

Definition at line 280 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateSRem ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 112 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateSub ( Constant *  LHS,
Constant *  RHS,
bool  HasNUW = false,
bool  HasNSW = false 
) const [inline]
Instruction* llvm::NoFolder::CreateTruncOrBitCast ( Constant *  C,
Type *  DestTy 
) const [inline]

Definition at line 245 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateUDiv ( Constant *  LHS,
Constant *  RHS,
bool  isExact = false 
) const [inline]

Definition at line 88 of file NoFolder.h.

References CreateExactUDiv().

Instruction* llvm::NoFolder::CreateURem ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 109 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateXor ( Constant *  LHS,
Constant *  RHS 
) const [inline]

Definition at line 143 of file NoFolder.h.

Instruction* llvm::NoFolder::CreateZExtOrBitCast ( Constant *  C,
Type *  DestTy 
) const [inline]

Definition at line 238 of file NoFolder.h.


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