LLVM API Documentation
#include "llvm/Analysis/ValueTracking.h"#include "llvm/Constants.h"#include "llvm/Instructions.h"#include "llvm/GlobalVariable.h"#include "llvm/IntrinsicInst.h"#include "llvm/Target/TargetData.h"#include "llvm/Support/GetElementPtrTypeIterator.h"#include "llvm/Support/MathExtras.h"#include <cstring>
Go to the source code of this file.
Functions | |
| static unsigned | getOpcode (const Value *V) |
| void | llvm::ComputeMaskedBits (Value *V, const APInt &Mask, APInt &KnownZero, APInt &KnownOne, TargetData *TD=0, unsigned Depth=0) |
| bool | llvm::MaskedValueIsZero (Value *V, const APInt &Mask, TargetData *TD=0, unsigned Depth=0) |
| unsigned | llvm::ComputeNumSignBits (Value *Op, TargetData *TD=0, unsigned Depth=0) |
| bool | llvm::CannotBeNegativeZero (const Value *V, unsigned Depth=0) |
| Value * | BuildSubAggregate (Value *From, Value *To, const Type *IndexedType, SmallVector< unsigned, 10 > &Idxs, unsigned IdxSkip, Instruction *InsertBefore) |
| Value * | BuildSubAggregate (Value *From, const unsigned *idx_begin, const unsigned *idx_end, Instruction *InsertBefore) |
| Value * | llvm::FindInsertedValue (Value *V, const unsigned *idx_begin, const unsigned *idx_end, Instruction *InsertBefore=0) |
| bool | llvm::GetConstantStringInfo (Value *V, std::string &Str, uint64_t Offset=0, bool StopAtNul=true) |
| Value* BuildSubAggregate | ( | Value * | From, | |
| const unsigned * | idx_begin, | |||
| const unsigned * | idx_end, | |||
| Instruction * | InsertBefore | |||
| ) |
Definition at line 825 of file ValueTracking.cpp.
References BuildSubAggregate(), llvm::UndefValue::get(), llvm::Value::getType(), llvm::SmallVectorImpl< T >::size(), and To.
| Value* BuildSubAggregate | ( | Value * | From, | |
| Value * | To, | |||
| const Type * | IndexedType, | |||
| SmallVector< unsigned, 10 > & | Idxs, | |||
| unsigned | IdxSkip, | |||
| Instruction * | InsertBefore | |||
| ) |
Definition at line 766 of file ValueTracking.cpp.
References llvm::SmallVectorImpl< T >::begin(), llvm::InsertValueInst::Create(), llvm::dyn_cast(), llvm::SmallVectorImpl< T >::end(), llvm::Instruction::eraseFromParent(), llvm::FindInsertedValue(), llvm::InsertValueInst::getAggregateOperand(), llvm::StructType::getElementType(), llvm::StructType::getNumElements(), llvm::SmallVectorImpl< T >::pop_back(), llvm::SmallVectorImpl< T >::push_back(), and V.
Referenced by BuildSubAggregate(), and llvm::FindInsertedValue().
getOpcode - If this is an Instruction or a ConstantExpr, return the opcode value. Otherwise return UserOp1.
Definition at line 28 of file ValueTracking.cpp.
Referenced by llvm::ComputeMaskedBits(), llvm::ComputeNumSignBits(), EnforceKnownAlignment(), llvm::SelectInst::getOpcode(), isGEP(), IsPossiblyOverwrittenArgumentOfTailCall(), isReassociableOp(), IsUserOfGlobalSafeForSRA(), LowerVECTOR_SHUFFLE_4wide(), SpeculativelyExecuteBB(), and SRAGlobal().
This web site is hosted by the Computer Science Department at the University of Illinois at Urbana-Champaign.