LLVM API Documentation
#include <Instructions.h>
Public Member Functions | |
Value * | getVectorOperand () |
Value * | getIndexOperand () |
const Value * | getVectorOperand () const |
const Value * | getIndexOperand () const |
VectorType * | getVectorOperandType () const |
DECLARE_TRANSPARENT_OPERAND_ACCESSORS (Value) | |
Transparently provide more efficient getOperand methods. | |
Static Public Member Functions | |
static ExtractElementInst * | Create (Value *Vec, Value *Idx, const Twine &NameStr="", Instruction *InsertBefore=nullptr) |
static ExtractElementInst * | Create (Value *Vec, Value *Idx, const Twine &NameStr, BasicBlock *InsertAtEnd) |
static bool | isValidOperands (const Value *Vec, 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 | |
ExtractElementInst * | clone_impl () const override |
ExtractElementInst - This instruction extracts a single (scalar) element from a VectorType value
Definition at line 1654 of file Instructions.h.
static bool llvm::ExtractElementInst::classof | ( | const Instruction * | I | ) | [inline, static] |
Definition at line 1692 of file Instructions.h.
References ExtractElement(), and llvm::Instruction::getOpcode().
Referenced by classof().
static bool llvm::ExtractElementInst::classof | ( | const Value * | V | ) | [inline, static] |
Methods for support type inquiry through isa, cast, and dyn_cast:
Reimplemented from llvm::Instruction.
Definition at line 1695 of file Instructions.h.
References classof().
ExtractElementInst * ExtractElementInst::clone_impl | ( | ) | const [override, protected, virtual] |
Implements llvm::Instruction.
Definition at line 3741 of file Instructions.cpp.
References Create(), and llvm::User::getOperand().
static ExtractElementInst* llvm::ExtractElementInst::Create | ( | Value * | Vec, |
Value * | Idx, | ||
const Twine & | NameStr = "" , |
||
Instruction * | InsertBefore = nullptr |
||
) | [inline, static] |
static ExtractElementInst* llvm::ExtractElementInst::Create | ( | Value * | Vec, |
Value * | Idx, | ||
const Twine & | NameStr, | ||
BasicBlock * | InsertAtEnd | ||
) | [inline, static] |
Definition at line 1668 of file Instructions.h.
Transparently provide more efficient getOperand methods.
Value* llvm::ExtractElementInst::getIndexOperand | ( | ) | [inline] |
Definition at line 1679 of file Instructions.h.
Referenced by llvm::InstCombiner::visitExtractElementInst().
const Value* llvm::ExtractElementInst::getIndexOperand | ( | ) | const [inline] |
Definition at line 1681 of file Instructions.h.
Value* llvm::ExtractElementInst::getVectorOperand | ( | ) | [inline] |
Definition at line 1678 of file Instructions.h.
Referenced by getVectorOperandType().
const Value* llvm::ExtractElementInst::getVectorOperand | ( | ) | const [inline] |
Definition at line 1680 of file Instructions.h.
VectorType* llvm::ExtractElementInst::getVectorOperandType | ( | ) | const [inline] |
Definition at line 1683 of file Instructions.h.
References llvm::Value::getType(), and getVectorOperand().
Referenced by llvm::InstCombiner::visitExtractElementInst().
isValidOperands - Return true if an extractelement instruction can be formed with the specified operands.
Definition at line 1484 of file Instructions.cpp.
References llvm::Value::getType(), llvm::Type::isIntegerTy(), and llvm::Type::isVectorTy().