LLVM API Documentation
#include <Instructions.h>
Public Member Functions | |
VectorType * | getType () const |
DECLARE_TRANSPARENT_OPERAND_ACCESSORS (Value) | |
Transparently provide more efficient getOperand methods. | |
Static Public Member Functions | |
static InsertElementInst * | Create (Value *Vec, Value *NewElt, Value *Idx, const Twine &NameStr="", Instruction *InsertBefore=nullptr) |
static InsertElementInst * | Create (Value *Vec, Value *NewElt, Value *Idx, const Twine &NameStr, BasicBlock *InsertAtEnd) |
static bool | isValidOperands (const Value *Vec, const Value *NewElt, const Value *Idx) |
static bool | classof (const Instruction *I) |
static bool | classof (const Value *V) |
Methods for support type inquiry through isa, cast, and dyn_cast: | |
Protected Member Functions | |
InsertElementInst * | clone_impl () const override |
InsertElementInst - This instruction inserts a single (scalar) element into a VectorType value
Definition at line 1714 of file Instructions.h.
static bool llvm::InsertElementInst::classof | ( | const Instruction * | I | ) | [inline, static] |
Definition at line 1750 of file Instructions.h.
References llvm::Instruction::getOpcode(), and llvm::InsertElement.
static bool llvm::InsertElementInst::classof | ( | const Value * | V | ) | [inline, static] |
Methods for support type inquiry through isa, cast, and dyn_cast:
Reimplemented from llvm::Instruction.
Definition at line 1753 of file Instructions.h.
InsertElementInst * InsertElementInst::clone_impl | ( | ) | const [override, protected, virtual] |
Implements llvm::Instruction.
Definition at line 3745 of file Instructions.cpp.
References Create(), and llvm::User::getOperand().
static InsertElementInst* llvm::InsertElementInst::Create | ( | Value * | Vec, |
Value * | NewElt, | ||
Value * | Idx, | ||
const Twine & | NameStr = "" , |
||
Instruction * | InsertBefore = nullptr |
||
) | [inline, static] |
Definition at line 1724 of file Instructions.h.
Referenced by clone_impl(), llvm::NoFolder::CreateInsertElement(), llvm::IRBuilder< true, TargetFolder >::CreateInsertElement(), llvm::ConstantExpr::getAsInstruction(), and llvm::InstCombiner::visitBitCast().
static InsertElementInst* llvm::InsertElementInst::Create | ( | Value * | Vec, |
Value * | NewElt, | ||
Value * | Idx, | ||
const Twine & | NameStr, | ||
BasicBlock * | InsertAtEnd | ||
) | [inline, static] |
Definition at line 1729 of file Instructions.h.
Transparently provide more efficient getOperand methods.
VectorType* llvm::InsertElementInst::getType | ( | ) | const [inline] |
getType - Overload to return most specific vector type.
Reimplemented from llvm::Value.
Definition at line 1742 of file Instructions.h.
References llvm::Value::getType().
Referenced by llvm::Interpreter::visitInsertElementInst(), and llvm::InstCombiner::visitInsertElementInst().
bool InsertElementInst::isValidOperands | ( | const Value * | Vec, |
const Value * | NewElt, | ||
const Value * | Idx | ||
) | [static] |
isValidOperands - Return true if an insertelement instruction can be formed with the specified operands.
Definition at line 1524 of file Instructions.cpp.
References llvm::Value::getType(), llvm::Type::isIntegerTy(), and llvm::Type::isVectorTy().