LLVM API Documentation
#include "llvm/IR/Metadata.h"
#include "LLVMContextImpl.h"
#include "SymbolTableListTraitsImpl.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/IR/ConstantRange.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/LeakDetector.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/ValueHandle.h"
Go to the source code of this file.
Classes | |
class | llvm::MDNodeOperand |
Namespaces | |
namespace | llvm |
List of target independent CodeGen pass IDs. | |
Functions | |
static MDNodeOperand * | getOperandPtr (MDNode *N, unsigned Op) |
static const Function * | getFunctionForValue (Value *V) |
static const Function * | assertLocalFunction (const MDNode *N) |
static bool | isFunctionLocalValue (Value *V) |
static bool | isContiguous (const ConstantRange &A, const ConstantRange &B) |
static bool | canBeMerged (const ConstantRange &A, const ConstantRange &B) |
static bool | tryMergeRange (SmallVectorImpl< Value * > &EndPoints, ConstantInt *Low, ConstantInt *High) |
static void | addRange (SmallVectorImpl< Value * > &EndPoints, ConstantInt *Low, ConstantInt *High) |
static SmallVector< TrackingVH < MDNode >, 4 > & | getNMDOps (void *Operands) |
static void addRange | ( | SmallVectorImpl< Value * > & | EndPoints, |
ConstantInt * | Low, | ||
ConstantInt * | High | ||
) | [static] |
Definition at line 480 of file Metadata.cpp.
References llvm::SmallVectorBase::empty(), llvm::SmallVectorTemplateBase< T, isPodLike >::push_back(), and tryMergeRange().
Referenced by llvm::MDNode::getMostGenericRange().
static const Function* assertLocalFunction | ( | const MDNode * | N | ) | [static] |
Definition at line 166 of file Metadata.cpp.
References F(), getFunctionForValue(), llvm::MDNode::getNumOperands(), llvm::MDNode::getOperand(), and llvm::MDNode::isFunctionLocal().
Referenced by llvm::MDNode::getFunction().
static bool canBeMerged | ( | const ConstantRange & | A, |
const ConstantRange & | B | ||
) | [static] |
Definition at line 459 of file Metadata.cpp.
References llvm::ConstantRange::intersectWith(), isContiguous(), and llvm::ConstantRange::isEmptySet().
Referenced by tryMergeRange().
static const Function* getFunctionForValue | ( | Value * | V | ) | [static] |
Definition at line 150 of file Metadata.cpp.
References llvm::ARM_PROC::A, llvm::BasicBlock::getParent(), and I.
Referenced by assertLocalFunction(), and llvm::MDNode::getFunction().
static SmallVector<TrackingVH<MDNode>, 4>& getNMDOps | ( | void * | Operands | ) | [static] |
Definition at line 561 of file Metadata.cpp.
Referenced by llvm::NamedMDNode::addOperand(), llvm::NamedMDNode::dropAllReferences(), llvm::NamedMDNode::getNumOperands(), llvm::NamedMDNode::getOperand(), and llvm::NamedMDNode::~NamedMDNode().
static MDNodeOperand* getOperandPtr | ( | MDNode * | N, |
unsigned | Op | ||
) | [static] |
getOperandPtr - Helper function to get the MDNodeOperand's coallocated on the end of the MDNode.
Definition at line 103 of file Metadata.cpp.
Referenced by llvm::MDNode::getOperand(), and llvm::MDNode::replaceOperandWith().
static bool isContiguous | ( | const ConstantRange & | A, |
const ConstantRange & | B | ||
) | [static] |
Definition at line 455 of file Metadata.cpp.
References llvm::ConstantRange::getLower(), and llvm::ConstantRange::getUpper().
Referenced by canBeMerged().
static bool isFunctionLocalValue | ( | Value * | V | ) | [static] |
isFunctionLocalValue - Return true if this is a value that would require a function-local MDNode.
Definition at line 214 of file Metadata.cpp.
static bool tryMergeRange | ( | SmallVectorImpl< Value * > & | EndPoints, |
ConstantInt * | Low, | ||
ConstantInt * | High | ||
) | [static] |
Definition at line 463 of file Metadata.cpp.
References canBeMerged(), llvm::ConstantInt::get(), llvm::ConstantRange::getLower(), llvm::ConstantInt::getType(), llvm::ConstantRange::getUpper(), llvm::ConstantInt::getValue(), llvm::AArch64CC::LE, llvm::SmallVectorTemplateCommon< T, typename >::size(), and llvm::ConstantRange::unionWith().
Referenced by addRange(), and llvm::MDNode::getMostGenericRange().