LLVM API Documentation
#include <Instructions.h>
Inheritance diagram for llvm::ShuffleVectorInst:
Public Member Functions | |
ShuffleVectorInst (Value *V1, Value *V2, Value *Mask, const std::string &Name="", Instruction *InsertBefor=0) | |
ShuffleVectorInst (Value *V1, Value *V2, Value *Mask, const std::string &Name, BasicBlock *InsertAtEnd) | |
virtual ShuffleVectorInst * | clone () const |
virtual bool | mayWriteToMemory () const |
const PackedType * | getType () const |
Value * | getOperand (unsigned i) const |
Transparently provide more efficient getOperand methods. | |
void | setOperand (unsigned i, Value *Val) |
unsigned | getNumOperands () const |
Static Public Member Functions | |
static bool | isValidOperands (const Value *V1, const Value *V2, const Value *Mask) |
static bool | classof (const ShuffleVectorInst *) |
static bool | classof (const Instruction *I) |
Methods for support type inquiry through isa, cast, and dyn_cast:. | |
static bool | classof (const Value *V) |
Definition at line 844 of file Instructions.h.
ShuffleVectorInst::ShuffleVectorInst | ( | Value * | V1, | |
Value * | V2, | |||
Value * | Mask, | |||
const std::string & | Name = "" , |
|||
Instruction * | InsertBefor = 0 | |||
) |
Definition at line 924 of file Instructions.cpp.
References llvm::Use::init(), and isValidOperands().
ShuffleVectorInst::ShuffleVectorInst | ( | Value * | V1, | |
Value * | V2, | |||
Value * | Mask, | |||
const std::string & | Name, | |||
BasicBlock * | InsertAtEnd | |||
) |
Definition at line 935 of file Instructions.cpp.
References llvm::Use::init(), and isValidOperands().
bool ShuffleVectorInst::isValidOperands | ( | const Value * | V1, | |
const Value * | V2, | |||
const Value * | Mask | |||
) | [static] |
isValidOperands - Return true if a shufflevector instruction can be formed with the specified operands.
Definition at line 947 of file Instructions.cpp.
References llvm::Value::getType(), and llvm::Type::UIntTy.
Referenced by llvm::ConstantExpr::getShuffleVector(), llvm::BytecodeReader::ParseConstantPoolValue(), llvm::BytecodeReader::ParseInstruction(), and ShuffleVectorInst().
ShuffleVectorInst * ShuffleVectorInst::clone | ( | ) | const [virtual] |
clone() - Create a copy of 'this' instruction that is identical in all ways except the following: The instruction has no parent The instruction has no name
Implements llvm::Instruction.
Definition at line 1333 of file Instructions.cpp.
virtual bool llvm::ShuffleVectorInst::mayWriteToMemory | ( | ) | const [inline, virtual] |
mayWriteToMemory - Return true if this instruction may modify memory.
Reimplemented from llvm::Instruction.
Definition at line 860 of file Instructions.h.
const PackedType* llvm::ShuffleVectorInst::getType | ( | ) | const [inline] |
getType - Overload to return most specific packed type.
Reimplemented from llvm::Value.
Definition at line 864 of file Instructions.h.
References llvm::Value::getType().
Referenced by getShuffleMask().
Value* llvm::ShuffleVectorInst::getOperand | ( | unsigned | i | ) | const [inline] |
Transparently provide more efficient getOperand methods.
Reimplemented from llvm::User.
Definition at line 869 of file Instructions.h.
References Ops.
Referenced by getShuffleMask().
void llvm::ShuffleVectorInst::setOperand | ( | unsigned | i, | |
Value * | Val | |||
) | [inline] |
unsigned llvm::ShuffleVectorInst::getNumOperands | ( | ) | const [inline] |
static bool llvm::ShuffleVectorInst::classof | ( | const ShuffleVectorInst * | ) | [inline, static] |
Definition at line 880 of file Instructions.h.
static bool llvm::ShuffleVectorInst::classof | ( | const Instruction * | I | ) | [inline, static] |
Methods for support type inquiry through isa, cast, and dyn_cast:.
Reimplemented from llvm::Instruction.
Definition at line 881 of file Instructions.h.
References llvm::Instruction::getOpcode(), and llvm::Instruction::ShuffleVector.
static bool llvm::ShuffleVectorInst::classof | ( | const Value * | V | ) | [inline, static] |
Reimplemented from llvm::Instruction.
Definition at line 884 of file Instructions.h.
References llvm::CastInst::classof(), and V.