|
LLVM 22.0.0git
|
#include "IR/LLVMContextImpl.h"
Public Types | |
| using | ArrayConstantsTy = ConstantUniqueMap<ConstantArray> |
| using | StructConstantsTy = ConstantUniqueMap<ConstantStruct> |
| using | VectorConstantsTy = ConstantUniqueMap<ConstantVector> |
| using | FunctionTypeSet = DenseSet<FunctionType *, FunctionTypeKeyInfo> |
| using | StructTypeSet = DenseSet<StructType *, AnonStructTypeKeyInfo> |
| using | TargetExtTypeSet = DenseSet<TargetExtType *, TargetExtTypeKeyInfo> |
| using | ValueHandlesTy = DenseMap<Value *, ValueHandleBase *> |
| ValueHandles - This map keeps track of all of the value handles that are watching a Value*. | |
Public Member Functions | |
| StringMapEntry< uint32_t > * | getOrInsertBundleTag (StringRef Tag) |
| void | getOperandBundleTags (SmallVectorImpl< StringRef > &Tags) const |
| uint32_t | getOperandBundleTagID (StringRef Tag) const |
| SyncScope::ID | getOrInsertSyncScopeID (StringRef SSN) |
| getOrInsertSyncScopeID - Maps synchronization scope name to synchronization scope ID. | |
| void | getSyncScopeNames (SmallVectorImpl< StringRef > &SSNs) const |
| getSyncScopeNames - Populates client supplied SmallVector with synchronization scope names registered with LLVMContext. | |
| std::optional< StringRef > | getSyncScopeName (SyncScope::ID Id) const |
| getSyncScopeName - Returns the name of a SyncScope::ID registered with LLVMContext, if any. | |
| LLVMContextImpl (LLVMContext &C) | |
| ~LLVMContextImpl () | |
| OptPassGate & | getOptPassGate () const |
| Access the object which can disable optional passes and individual optimizations at compile time. | |
| void | setOptPassGate (OptPassGate &) |
| Set the object which can disable optional passes and individual optimizations at compile time. | |
| void | setTrailingDbgRecords (BasicBlock *B, DbgMarker *M) |
| DbgMarker * | getTrailingDbgRecords (BasicBlock *B) |
| void | deleteTrailingDbgRecords (BasicBlock *B) |
Definition at line 1620 of file LLVMContextImpl.h.
Definition at line 1712 of file LLVMContextImpl.h.
Definition at line 1761 of file LLVMContextImpl.h.
Definition at line 1715 of file LLVMContextImpl.h.
Definition at line 1763 of file LLVMContextImpl.h.
Definition at line 1768 of file LLVMContextImpl.h.
| using llvm::LLVMContextImpl::ValueHandlesTy = DenseMap<Value *, ValueHandleBase *> |
ValueHandles - This map keeps track of all of the value handles that are watching a Value*.
The Value::HasValueHandle bit is used to know whether or not a value has an entry in this map.
Definition at line 1780 of file LLVMContextImpl.h.
Definition at line 1718 of file LLVMContextImpl.h.
| LLVMContextImpl::LLVMContextImpl | ( | LLVMContext & | C | ) |
Definition at line 32 of file LLVMContextImpl.cpp.
References BFloatTy, llvm::CallingConv::C, DiagHandler, DoubleTy, DoubleTyID, FloatTy, FloatTyID, FP128Ty, HalfTy, Int128Ty, Int16Ty, Int1Ty, Int32Ty, Int64Ty, Int8Ty, LabelTy, MetadataTy, PPC_FP128Ty, TokenTy, VoidTy, X86_AMXTy, and X86_FP80Ty.
| LLVMContextImpl::~LLVMContextImpl | ( | ) |
Definition at line 43 of file LLVMContextImpl.cpp.
References ArrayConstants, assert(), AttrsSetNodes, CAZConstants, CDSConstants, ConstantRangeListAttributes, CPNConstants, CTNConstants, DIArgLists, DistinctMDNodes, ExprConstants, FPConstants, FPSplatConstants, I, InlineAsms, IntConstants, IntOneConstants, IntSplatConstants, IntZeroConstants, MetadataAsValues, OwnedModules, llvm::SmallVectorTemplateBase< T, bool >::push_back(), PVConstants, llvm::SmallVectorImpl< T >::reserve(), StructConstants, TrailingDbgRecords, UVConstants, ValueMetadata, ValuesAsMetadata, and VectorConstants.
|
inline |
Definition at line 1889 of file LLVMContextImpl.h.
References B(), and TrailingDbgRecords.
Definition at line 196 of file LLVMContextImpl.cpp.
References assert(), BundleTagCache, I, and llvm::Tag.
| void LLVMContextImpl::getOperandBundleTags | ( | SmallVectorImpl< StringRef > & | Tags | ) | const |
Definition at line 190 of file LLVMContextImpl.cpp.
References BundleTagCache, llvm::SmallVectorImpl< T >::resize(), and T.
| OptPassGate & LLVMContextImpl::getOptPassGate | ( | ) | const |
Access the object which can disable optional passes and individual optimizations at compile time.
Gets the OptPassGate for this LLVMContextImpl, which defaults to the singleton OptBisect if not explicitly set.
Definition at line 228 of file LLVMContextImpl.cpp.
References llvm::getGlobalPassGate(), and OPG.
| StringMapEntry< uint32_t > * LLVMContextImpl::getOrInsertBundleTag | ( | StringRef | Tag | ) |
Definition at line 185 of file LLVMContextImpl.cpp.
References BundleTagCache, and llvm::Tag.
| SyncScope::ID LLVMContextImpl::getOrInsertSyncScopeID | ( | StringRef | SSN | ) |
getOrInsertSyncScopeID - Maps synchronization scope name to synchronization scope ID.
Every synchronization scope registered with LLVMContext has unique ID except pre-defined ones.
Definition at line 202 of file LLVMContextImpl.cpp.
| std::optional< StringRef > LLVMContextImpl::getSyncScopeName | ( | SyncScope::ID | Id | ) | const |
getSyncScopeName - Returns the name of a SyncScope::ID registered with LLVMContext, if any.
Definition at line 217 of file LLVMContextImpl.cpp.
| void LLVMContextImpl::getSyncScopeNames | ( | SmallVectorImpl< StringRef > & | SSNs | ) | const |
getSyncScopeNames - Populates client supplied SmallVector with synchronization scope names registered with LLVMContext.
Synchronization scope names are ordered by increasing synchronization scope IDs.
Definition at line 209 of file LLVMContextImpl.cpp.
References llvm::SmallVectorImpl< T >::resize(), SSC, and llvm::SSE.
|
inline |
Definition at line 1885 of file LLVMContextImpl.h.
References B(), and TrailingDbgRecords.
| void LLVMContextImpl::setOptPassGate | ( | OptPassGate & | OPG | ) |
Set the object which can disable optional passes and individual optimizations at compile time.
The lifetime of the object must be guaranteed to extend as long as the LLVMContext is used by compilation.
Definition at line 234 of file LLVMContextImpl.cpp.
References OPG.
|
inline |
Definition at line 1880 of file LLVMContextImpl.h.
References assert(), B(), and TrailingDbgRecords.
| BumpPtrAllocator llvm::LLVMContextImpl::Alloc |
Definition at line 1754 of file LLVMContextImpl.h.
Referenced by llvm::TypedPointerType::get().
| StructTypeSet llvm::LLVMContextImpl::AnonStructTypes |
Definition at line 1764 of file LLVMContextImpl.h.
| ArrayConstantsTy llvm::LLVMContextImpl::ArrayConstants |
Definition at line 1713 of file LLVMContextImpl.h.
Referenced by ~LLVMContextImpl().
Definition at line 1771 of file LLVMContextImpl.h.
| PointerType* llvm::LLVMContextImpl::AS0PointerType = nullptr |
Definition at line 1773 of file LLVMContextImpl.h.
| DenseMap<DIAssignID *, SmallVector<Instruction *, 1> > llvm::LLVMContextImpl::AssignmentIDToInstrs |
Map DIAssignID -> Instructions with that attachment.
Managed by Instruction via Instruction::updateDIAssignIDMapping. Query using the at:: functions defined in DebugInfo.h.
Definition at line 1792 of file LLVMContextImpl.h.
| DenseMap<std::pair<Type *, unsigned>, TypedPointerType *> llvm::LLVMContextImpl::ASTypedPointerTypes |
Definition at line 1775 of file LLVMContextImpl.h.
Referenced by llvm::TypedPointerType::get().
| FoldingSet<AttributeListImpl> llvm::LLVMContextImpl::AttrsLists |
Definition at line 1682 of file LLVMContextImpl.h.
| FoldingSet<AttributeImpl> llvm::LLVMContextImpl::AttrsSet |
Definition at line 1681 of file LLVMContextImpl.h.
| FoldingSet<AttributeSetNode> llvm::LLVMContextImpl::AttrsSetNodes |
Definition at line 1683 of file LLVMContextImpl.h.
Referenced by ~LLVMContextImpl().
| Type llvm::LLVMContextImpl::BFloatTy |
Definition at line 1747 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| DenseMap<const BasicBlock *, BlockAddress *> llvm::LLVMContextImpl::BlockAddresses |
Definition at line 1731 of file LLVMContextImpl.h.
Referenced by llvm::BlockAddress::get(), and llvm::BlockAddress::lookup().
A set of interned tags for operand bundles.
The StringMap maps bundle tags to their IDs.
Definition at line 1812 of file LLVMContextImpl.h.
Referenced by getOperandBundleTagID(), getOperandBundleTags(), and getOrInsertBundleTag().
| DenseMap<Type *, std::unique_ptr<ConstantAggregateZero> > llvm::LLVMContextImpl::CAZConstants |
Definition at line 1710 of file LLVMContextImpl.h.
Referenced by ~LLVMContextImpl().
| StringMap<std::unique_ptr<ConstantDataSequential> > llvm::LLVMContextImpl::CDSConstants |
Definition at line 1729 of file LLVMContextImpl.h.
Referenced by ~LLVMContextImpl().
| ConstantUniqueMap<ConstantPtrAuth> llvm::LLVMContextImpl::ConstantPtrAuths |
Definition at line 1737 of file LLVMContextImpl.h.
Referenced by llvm::ConstantPtrAuth::get().
| SpecificBumpPtrAllocator<ConstantRangeAttributeImpl> llvm::LLVMContextImpl::ConstantRangeAttributeAlloc |
Definition at line 1757 of file LLVMContextImpl.h.
| std::vector<ConstantRangeListAttributeImpl *> llvm::LLVMContextImpl::ConstantRangeListAttributes |
Definition at line 1708 of file LLVMContextImpl.h.
Referenced by ~LLVMContextImpl().
| DenseMap<PointerType *, std::unique_ptr<ConstantPointerNull> > llvm::LLVMContextImpl::CPNConstants |
Definition at line 1721 of file LLVMContextImpl.h.
Referenced by llvm::ConstantPointerNull::get(), and ~LLVMContextImpl().
| DenseMap<TargetExtType *, std::unique_ptr<ConstantTargetNone> > llvm::LLVMContextImpl::CTNConstants |
Definition at line 1723 of file LLVMContextImpl.h.
Referenced by ~LLVMContextImpl().
CustomMDKindNames - Map to hold the metadata string to ID mapping.
Definition at line 1784 of file LLVMContextImpl.h.
| std::string llvm::LLVMContextImpl::DefaultTargetCPU |
Definition at line 1891 of file LLVMContextImpl.h.
| std::string llvm::LLVMContextImpl::DefaultTargetFeatures |
Definition at line 1892 of file LLVMContextImpl.h.
| std::unique_ptr<DiagnosticHandler> llvm::LLVMContextImpl::DiagHandler |
Definition at line 1635 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| bool llvm::LLVMContextImpl::DiagnosticsHotnessRequested = false |
Definition at line 1637 of file LLVMContextImpl.h.
| std::optional<uint64_t> llvm::LLVMContextImpl::DiagnosticsHotnessThreshold = 0 |
The minimum hotness value a diagnostic needs in order to be included in optimization diagnostics.
The threshold is an Optional value, which maps to one of the 3 states: 1). 0 => threshold disabled. All emarks will be printed. 2). positive int => manual threshold by user. Remarks with hotness exceed threshold will be printed. 3). None => 'auto' threshold by user. The actual value is not available at command line, but will be synced with hotness threhold from profile summary during compilation.
State 1 and 2 are considered as terminal states. State transition is only allowed from 3 to 2, when the threshold is first synced with profile summary. This ensures that the threshold is set only once and stays constant.
If threshold option is not specified, it is disabled (0) by default.
Definition at line 1656 of file LLVMContextImpl.h.
| std::optional<uint32_t> llvm::LLVMContextImpl::DiagnosticsMisExpectTolerance = 0 |
The percentage of difference between profiling branch weights and llvm.expect branch weights to tolerate when emiting MisExpect diagnostics.
Definition at line 1660 of file LLVMContextImpl.h.
| DenseSet<DIArgList *, DIArgListInfo> llvm::LLVMContextImpl::DIArgLists |
Definition at line 1688 of file LLVMContextImpl.h.
Referenced by llvm::DIArgList::handleChangedOperand(), and ~LLVMContextImpl().
| bool llvm::LLVMContextImpl::DiscardValueNames = false |
Flag to indicate if Value (other than GlobalValue) retains their name or not.
Definition at line 1845 of file LLVMContextImpl.h.
DiscriminatorTable - This table maps file:line locations to an integer representing the next DWARF path discriminator to assign to instructions in different blocks at the same location.
Definition at line 1806 of file LLVMContextImpl.h.
| std::vector<MDNode *> llvm::LLVMContextImpl::DistinctMDNodes |
Definition at line 1701 of file LLVMContextImpl.h.
Referenced by llvm::MDNode::storeDistinctInContext(), and ~LLVMContextImpl().
| std::optional<DenseMap<const MDString *, DICompositeType *> > llvm::LLVMContextImpl::DITypeMap |
Definition at line 1695 of file LLVMContextImpl.h.
| Type llvm::LLVMContextImpl::DoubleTy |
Definition at line 1747 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| DenseMap<const GlobalValue *, DSOLocalEquivalent *> llvm::LLVMContextImpl::DSOLocalEquivalents |
Definition at line 1733 of file LLVMContextImpl.h.
Referenced by llvm::DSOLocalEquivalent::get().
| ConstantUniqueMap<ConstantExpr> llvm::LLVMContextImpl::ExprConstants |
Definition at line 1739 of file LLVMContextImpl.h.
Referenced by llvm::ConstantExpr::get(), llvm::ConstantExpr::getExtractElement(), getFoldedCast(), llvm::ConstantExpr::getGetElementPtr(), llvm::ConstantExpr::getInsertElement(), llvm::ConstantExpr::getShuffleVector(), and ~LLVMContextImpl().
| Type llvm::LLVMContextImpl::FloatTy |
Definition at line 1747 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| Type llvm::LLVMContextImpl::FP128Ty |
Definition at line 1749 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| DenseMap<APFloat, std::unique_ptr<ConstantFP> > llvm::LLVMContextImpl::FPConstants |
Definition at line 1677 of file LLVMContextImpl.h.
Referenced by llvm::ConstantFP::get(), and ~LLVMContextImpl().
| DenseMap<std::pair<ElementCount, APFloat>, std::unique_ptr<ConstantFP> > llvm::LLVMContextImpl::FPSplatConstants |
Definition at line 1679 of file LLVMContextImpl.h.
Referenced by ~LLVMContextImpl().
| FunctionTypeSet llvm::LLVMContextImpl::FunctionTypes |
Definition at line 1762 of file LLVMContextImpl.h.
Maintain the GC name for each function.
This saves allocating an additional word in Function for programs which do not use GC (i.e., most programs) at the cost of increased overhead for clients which do use GC.
Definition at line 1841 of file LLVMContextImpl.h.
| DenseMap<const GlobalObject *, StringRef> llvm::LLVMContextImpl::GlobalObjectSections |
Collection of per-GlobalObject sections used in this context.
Definition at line 1795 of file LLVMContextImpl.h.
Referenced by llvm::GlobalObject::setSection().
| DenseMap<const GlobalValue *, StringRef> llvm::LLVMContextImpl::GlobalValuePartitions |
Collection of per-GlobalValue partitions used in this context.
Definition at line 1798 of file LLVMContextImpl.h.
Referenced by llvm::GlobalValue::getPartition(), and llvm::GlobalValue::setPartition().
| DenseMap<const GlobalValue *, GlobalValue::SanitizerMetadata> llvm::LLVMContextImpl::GlobalValueSanitizerMetadata |
Definition at line 1801 of file LLVMContextImpl.h.
Referenced by llvm::GlobalValue::getSanitizerMetadata(), llvm::GlobalValue::removeSanitizerMetadata(), and llvm::GlobalValue::setSanitizerMetadata().
| Type llvm::LLVMContextImpl::HalfTy |
Definition at line 1747 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| ConstantUniqueMap<InlineAsm> llvm::LLVMContextImpl::InlineAsms |
Definition at line 1741 of file LLVMContextImpl.h.
Referenced by llvm::InlineAsm::get(), and ~LLVMContextImpl().
| IntegerType llvm::LLVMContextImpl::Int128Ty |
Definition at line 1750 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| IntegerType llvm::LLVMContextImpl::Int16Ty |
Definition at line 1750 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| IntegerType llvm::LLVMContextImpl::Int1Ty |
Definition at line 1750 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| IntegerType llvm::LLVMContextImpl::Int32Ty |
Definition at line 1750 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| IntegerType llvm::LLVMContextImpl::Int64Ty |
Definition at line 1750 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| IntegerType llvm::LLVMContextImpl::Int8Ty |
Definition at line 1750 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| DenseMap<APInt, std::unique_ptr<ConstantInt> > llvm::LLVMContextImpl::IntConstants |
Definition at line 1673 of file LLVMContextImpl.h.
Referenced by llvm::ConstantInt::get(), and ~LLVMContextImpl().
| DenseMap<unsigned, IntegerType *> llvm::LLVMContextImpl::IntegerTypes |
Definition at line 1759 of file LLVMContextImpl.h.
| DenseMap<unsigned, std::unique_ptr<ConstantInt> > llvm::LLVMContextImpl::IntOneConstants |
Definition at line 1672 of file LLVMContextImpl.h.
Referenced by llvm::ConstantInt::get(), and ~LLVMContextImpl().
| DenseMap<std::pair<ElementCount, APInt>, std::unique_ptr<ConstantInt> > llvm::LLVMContextImpl::IntSplatConstants |
Definition at line 1675 of file LLVMContextImpl.h.
Referenced by ~LLVMContextImpl().
| DenseMap<unsigned, std::unique_ptr<ConstantInt> > llvm::LLVMContextImpl::IntZeroConstants |
Definition at line 1671 of file LLVMContextImpl.h.
Referenced by llvm::ConstantInt::get(), and ~LLVMContextImpl().
| Type llvm::LLVMContextImpl::LabelTy |
Definition at line 1747 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| std::unique_ptr<LLVMRemarkStreamer> llvm::LLVMContextImpl::LLVMRS |
The specialized remark streamer used by LLVM's OptimizationRemarkEmitter.
Definition at line 1664 of file LLVMContextImpl.h.
MachineFunctionNums - Keep the next available unique number available for a MachineFunction in given module.
Module must in OwnedModules.
Definition at line 1628 of file LLVMContextImpl.h.
| std::unique_ptr<remarks::RemarkStreamer> llvm::LLVMContextImpl::MainRemarkStreamer |
The main remark streamer used by all the other streamers (e.g.
IR, MIR, frontends, etc.). This should only be used by the specific streamers, and never directly.
Definition at line 1633 of file LLVMContextImpl.h.
| StringMap<MDString, BumpPtrAllocator> llvm::LLVMContextImpl::MDStringCache |
Definition at line 1685 of file LLVMContextImpl.h.
| DenseMap<Metadata *, MetadataAsValue *> llvm::LLVMContextImpl::MetadataAsValues |
Definition at line 1687 of file LLVMContextImpl.h.
Referenced by ~LLVMContextImpl(), and llvm::MetadataAsValue::~MetadataAsValue().
| Type llvm::LLVMContextImpl::MetadataTy |
Definition at line 1747 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| bool llvm::LLVMContextImpl::MisExpectWarningRequested = false |
Definition at line 1661 of file LLVMContextImpl.h.
| StringMap<StructType *> llvm::LLVMContextImpl::NamedStructTypes |
Definition at line 1765 of file LLVMContextImpl.h.
| unsigned llvm::LLVMContextImpl::NamedStructTypesUniqueID = 0 |
Definition at line 1766 of file LLVMContextImpl.h.
| uint64_t llvm::LLVMContextImpl::NextAtomGroup = 1 |
The next available source atom group number.
The front end is responsible for assigning source atom numbers, but certain optimisations need to assign new group numbers to a set of instructions. Most often code duplication optimisations like loop unroll. Tracking a global maximum value means we can know (cheaply) we're never using a group number that's already used within this function.
Start a 1 because 0 means the source location isn't part of an atom group.
Definition at line 1902 of file LLVMContextImpl.h.
| DenseMap<const GlobalValue *, NoCFIValue *> llvm::LLVMContextImpl::NoCFIValues |
Definition at line 1735 of file LLVMContextImpl.h.
Referenced by llvm::NoCFIValue::get().
|
mutable |
Definition at line 1850 of file LLVMContextImpl.h.
Referenced by getOptPassGate(), and setOptPassGate().
| SmallPtrSet<Module *, 4> llvm::LLVMContextImpl::OwnedModules |
OwnedModules - The set of modules instantiated in this context, and which will be automatically deleted if this context is deleted.
Definition at line 1624 of file LLVMContextImpl.h.
Referenced by ~LLVMContextImpl().
| DenseMap<unsigned, PointerType *> llvm::LLVMContextImpl::PointerTypes |
Definition at line 1774 of file LLVMContextImpl.h.
| Type llvm::LLVMContextImpl::PPC_FP128Ty |
Definition at line 1749 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| DenseMap<Type *, std::unique_ptr<PoisonValue> > llvm::LLVMContextImpl::PVConstants |
Definition at line 1727 of file LLVMContextImpl.h.
Referenced by llvm::PoisonValue::get(), and ~LLVMContextImpl().
| bool llvm::LLVMContextImpl::RespectDiagnosticFilters = false |
Definition at line 1636 of file LLVMContextImpl.h.
| UniqueStringSaver llvm::LLVMContextImpl::Saver {Alloc} |
Definition at line 1755 of file LLVMContextImpl.h.
Referenced by llvm::GlobalValue::setPartition(), and llvm::GlobalObject::setSection().
| StringMap<SyncScope::ID> llvm::LLVMContextImpl::SSC |
A set of interned synchronization scopes.
The StringMap maps synchronization scope names to their respective synchronization scope IDs.
Definition at line 1820 of file LLVMContextImpl.h.
Referenced by getOrInsertSyncScopeID(), getSyncScopeName(), and getSyncScopeNames().
| StructConstantsTy llvm::LLVMContextImpl::StructConstants |
Definition at line 1716 of file LLVMContextImpl.h.
Referenced by ~LLVMContextImpl().
| TargetExtTypeSet llvm::LLVMContextImpl::TargetExtTypes |
Definition at line 1769 of file LLVMContextImpl.h.
| ConstantInt* llvm::LLVMContextImpl::TheFalseVal = nullptr |
Definition at line 1744 of file LLVMContextImpl.h.
Referenced by llvm::ConstantInt::getFalse().
| std::unique_ptr<ConstantTokenNone> llvm::LLVMContextImpl::TheNoneToken |
Definition at line 1752 of file LLVMContextImpl.h.
Referenced by llvm::ConstantTokenNone::get().
| ConstantInt* llvm::LLVMContextImpl::TheTrueVal = nullptr |
Definition at line 1743 of file LLVMContextImpl.h.
Referenced by llvm::ConstantInt::getTrue().
| Type llvm::LLVMContextImpl::TokenTy |
Definition at line 1748 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| SmallDenseMap<BasicBlock *, DbgMarker *> llvm::LLVMContextImpl::TrailingDbgRecords |
Mapping of blocks to collections of "trailing" DbgVariableRecords.
As part of the "RemoveDIs" project, debug-info variable location records are going to cease being instructions... which raises the problem of where should they be recorded when we remove the terminator of a blocks, such as:
foo = add i32 0, 0 br label bar
If the branch is removed, a legitimate transient state while editing a block, any debug-records between those two instructions will not have a location. Each block thus records any DbgVariableRecord records that "trail" in such a way. These are stored in LLVMContext because typically LLVM only edits a small number of blocks at a time, so there's no need to bloat BasicBlock with such a data structure.
Definition at line 1877 of file LLVMContextImpl.h.
Referenced by deleteTrailingDbgRecords(), getTrailingDbgRecords(), setTrailingDbgRecords(), and ~LLVMContextImpl().
| DenseMap<Type *, std::unique_ptr<UndefValue> > llvm::LLVMContextImpl::UVConstants |
Definition at line 1725 of file LLVMContextImpl.h.
Referenced by llvm::UndefValue::get(), and ~LLVMContextImpl().
| ValueHandlesTy llvm::LLVMContextImpl::ValueHandles |
Definition at line 1781 of file LLVMContextImpl.h.
| DenseMap<const Value *, MDAttachments> llvm::LLVMContextImpl::ValueMetadata |
Collection of metadata used in this context.
Definition at line 1787 of file LLVMContextImpl.h.
Referenced by llvm::Value::addMetadata(), llvm::Value::clearMetadata(), llvm::Value::eraseMetadata(), llvm::Value::eraseMetadataIf(), llvm::Instruction::getAAMetadata(), llvm::Value::getAllMetadata(), llvm::Value::getMetadata(), llvm::Value::setMetadata(), and ~LLVMContextImpl().
Definition at line 1669 of file LLVMContextImpl.h.
| DenseMap<Value *, ValueAsMetadata *> llvm::LLVMContextImpl::ValuesAsMetadata |
Definition at line 1686 of file LLVMContextImpl.h.
Referenced by ~LLVMContextImpl().
| VectorConstantsTy llvm::LLVMContextImpl::VectorConstants |
Definition at line 1719 of file LLVMContextImpl.h.
Referenced by ~LLVMContextImpl().
| DenseMap<std::pair<Type *, ElementCount>, VectorType *> llvm::LLVMContextImpl::VectorTypes |
Definition at line 1772 of file LLVMContextImpl.h.
| Type llvm::LLVMContextImpl::VoidTy |
Definition at line 1747 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| Type llvm::LLVMContextImpl::X86_AMXTy |
Definition at line 1749 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| Type llvm::LLVMContextImpl::X86_FP80Ty |
Definition at line 1749 of file LLVMContextImpl.h.
Referenced by LLVMContextImpl().
| LLVMContext::YieldCallbackTy llvm::LLVMContextImpl::YieldCallback = nullptr |
Definition at line 1666 of file LLVMContextImpl.h.
| void* llvm::LLVMContextImpl::YieldOpaqueHandle = nullptr |
Definition at line 1667 of file LLVMContextImpl.h.