LLVM API Documentation
#include "llvm/IR/Value.h"
#include "LLVMContextImpl.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/IR/CallSite.h"
#include "llvm/IR/Constant.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/GetElementPtrTypeIterator.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/LeakDetector.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Operator.h"
#include "llvm/IR/ValueHandle.h"
#include "llvm/IR/ValueSymbolTable.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/ManagedStatic.h"
#include <algorithm>
Go to the source code of this file.
Enumerations | |
enum | PointerStripKind |
Functions | |
static Type * | checkType (Type *Ty) |
static bool | getSymTab (Value *V, ValueSymbolTable *&ST) |
static bool | contains (SmallPtrSetImpl< ConstantExpr * > &Cache, ConstantExpr *Expr, Constant *C) |
static bool | contains (Value *Expr, Value *V) |
static bool | isDereferenceablePointer (const Value *V, const DataLayout *DL, SmallPtrSetImpl< const Value * > &Visited) |
enum PointerStripKind |
static bool contains | ( | SmallPtrSetImpl< ConstantExpr * > & | Cache, |
ConstantExpr * | Expr, | ||
Constant * | C | ||
) | [static] |
Definition at line 306 of file Value.cpp.
References llvm::WinEH::CE, llvm::dyn_cast(), llvm::SmallPtrSetImpl< PtrType >::insert(), and llvm::User::operands().
Referenced by llvm::X86Operand::addGR32orGR64Operands(), llvm::X86FrameLowering::assignCalleeSavedSpillSlots(), llvm::ARMBaseInstrInfo::breakPartialRegDependency(), CheckBaseRegAndIndexReg(), contains(), llvm::RegionBase< Tr >::contains(), llvm::Thumb1InstrInfo::copyPhysReg(), llvm::Thumb2InstrInfo::copyPhysReg(), llvm::Mips16InstrInfo::copyPhysReg(), llvm::MipsSEInstrInfo::copyPhysReg(), llvm::MSP430InstrInfo::copyPhysReg(), llvm::R600InstrInfo::copyPhysReg(), llvm::SIInstrInfo::copyPhysReg(), llvm::SparcInstrInfo::copyPhysReg(), llvm::HexagonInstrInfo::copyPhysReg(), llvm::AArch64InstrInfo::copyPhysReg(), llvm::PPCInstrInfo::copyPhysReg(), llvm::ARMBaseInstrInfo::copyPhysReg(), llvm::SystemZInstrInfo::copyPhysReg(), copyPhysRegOpcode_AVX512(), CopyToFromAsymmetricReg(), llvm::XCoreRegisterInfo::eliminateFrameIndex(), llvm::MipsSEFrameLowering::emitPrologue(), llvm::PPCFrameLowering::emitPrologue(), llvm::X86FrameLowering::emitPrologue(), llvm::SystemZFrameLowering::emitPrologue(), llvm::ARMBaseInstrInfo::expandPostRAPseudo(), llvm::R600InstrInfo::fitsConstReadLimitations(), llvm::RegionBase< Tr >::getBBNode(), llvm::RegionBase< Tr >::getEnteringBlock(), llvm::LoopBase< BlockT, LoopT >::getExitBlocks(), llvm::LoopBase< BlockT, LoopT >::getExitEdges(), llvm::RegionBase< Tr >::getExitingBlock(), llvm::LoopBase< BlockT, LoopT >::getExitingBlocks(), llvm::LoopBase< BlockT, LoopT >::getLoopLatch(), llvm::LoopBase< BlockT, LoopT >::getLoopPredecessor(), getNextRegister(), llvm::RegionBase< Tr >::getNode(), getPairedGPR(), llvm::ARMBaseInstrInfo::getPartialRegUpdateClearance(), llvm::RegionBase< Tr >::getSubRegionNode(), isEvenReg(), isFPR64(), llvm::AArch64InstrInfo::isFPRCopy(), llvm::AArch64InstrInfo::isGPRCopy(), isHighReg(), llvm::Loop::isLoopInvariant(), llvm::RegionBase< Tr >::outermostLoopInRegion(), llvm::ARMAsmPrinter::PrintAsmOperand(), llvm::ARMAsmPrinter::printOperand(), llvm::MipsAsmPrinter::printSavedRegsBitmask(), llvm::SystemZFrameLowering::processFunctionBeforeCalleeSavedScan(), llvm::ARMFrameLowering::processFunctionBeforeCalleeSavedScan(), llvm::AArch64FrameLowering::processFunctionBeforeCalleeSavedScan(), llvm::PPCFrameLowering::processFunctionBeforeFrameFinalized(), llvm::R600InstrInfo::readsLDSSrcReg(), llvm::Value::replaceAllUsesWith(), llvm::SystemZFrameLowering::restoreCalleeSavedRegisters(), llvm::AArch64FrameLowering::restoreCalleeSavedRegisters(), llvm::X86FrameLowering::restoreCalleeSavedRegisters(), llvm::SystemZFrameLowering::spillCalleeSavedRegisters(), llvm::AArch64FrameLowering::spillCalleeSavedRegisters(), llvm::X86FrameLowering::spillCalleeSavedRegisters(), llvm::SIInstrInfo::verifyInstruction(), and llvm::LoopBase< BlockT, LoopT >::verifyLoop().
Definition at line 323 of file Value.cpp.
References llvm::CallingConv::C, llvm::WinEH::CE, contains(), and llvm::dyn_cast().
static bool getSymTab | ( | Value * | V, |
ValueSymbolTable *& | ST | ||
) | [static] |
Definition at line 144 of file Value.cpp.
References llvm::ARM_PROC::A, I, and P.
Referenced by llvm::SymbolTableListTraits< ValueSubClass, ItemParentClass >::addNodeToList(), llvm::SymbolTableListTraits< ValueSubClass, ItemParentClass >::removeNodeFromList(), llvm::Value::setName(), llvm::SymbolTableListTraits< ValueSubClass, ItemParentClass >::setSymTabObject(), llvm::Value::takeName(), and llvm::SymbolTableListTraits< ValueSubClass, ItemParentClass >::transferNodesFromList().
static bool isDereferenceablePointer | ( | const Value * | V, |
const DataLayout * | DL, | ||
SmallPtrSetImpl< const Value * > & | Visited | ||
) | [static] |
isDereferenceablePointer - Test if this value is always a pointer to allocated and suitably aligned memory for a simple load or store.
Definition at line 478 of file Value.cpp.
References llvm::ARM_PROC::A, llvm::dyn_cast(), llvm::gep_type_begin(), llvm::DataLayout::getABITypeAlignment(), llvm::APInt::getActiveBits(), llvm::ArrayType::getNumElements(), llvm::Type::getPointerElementType(), llvm::Value::getType(), llvm::DataLayout::getTypeStoreSize(), llvm::ConstantInt::getValue(), llvm::ConstantInt::getZExtValue(), I, llvm::SmallPtrSetImpl< PtrType >::insert(), llvm::Type::isSized(), and llvm::ConstantInt::isZero().