1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
llvm-mirror/lib/IR
Duncan P. N. Exon Smith 7f70bc555a IR: Lazily create ReplaceableMetadataImpl on MDNode
RAUW support on MDNode usually requires an extra allocation for
ReplaceableMetadataImpl.  This is only strictly necessary if there are
tracking references to the MDNode.  Make the construction of
ReplaceableMetadataImpl lazy, so that we don't get allocations if we
don't need them.

Since MDNode::isResolved now checks MDNode::isTemporary and
MDNode::NumUnresolved instead of whether a ReplaceableMetadataImpl is
allocated, the internal changes are intrusive (at various internal
checkpoints, isResolved now has a different answer).

However, there should be no real functionality change here; just
slightly lazier allocation behaviour.  The external semantics should be
identical.

llvm-svn: 265279
2016-04-03 21:23:52 +00:00
..
AsmWriter.cpp Swift Calling Convention: add swifterror attribute. 2016-04-01 21:41:15 +00:00
AttributeImpl.h Remove TrailingObjects::operator delete. It's still suffering from 2016-02-09 02:09:16 +00:00
Attributes.cpp Swift Calling Convention: add swifterror attribute. 2016-04-01 21:41:15 +00:00
AttributesCompatFunc.td
AutoUpgrade.cpp IR: Stop upgrading !llvm.loop attachments via MDString 2016-03-25 00:56:13 +00:00
BasicBlock.cpp Introduce @llvm.experimental.deoptimize 2016-03-11 19:08:34 +00:00
CMakeLists.txt [ThinLTO] Renaming of function index to module summary index (NFC) 2016-03-15 00:04:37 +00:00
Comdat.cpp
ConstantFold.cpp [InstCombine] Ensure all undef operands are handled before binary instruction constant folding 2016-03-21 22:15:50 +00:00
ConstantFold.h Minor code cleanup. NFC. 2016-03-22 04:37:32 +00:00
ConstantRange.cpp [ConstantRange] Generalize makeGuaranteedNoWrapRegion to work on ranges 2016-03-03 18:31:16 +00:00
Constants.cpp IR: Add ConstantData, for operand-less Constants 2016-02-21 02:39:49 +00:00
ConstantsContext.h Add a new insert_as() method to DenseMap and use it for ConstantUniqueMap 2016-03-07 00:51:00 +00:00
Core.cpp Various style fix in Core.h/Core.cpp . NFC 2016-04-03 21:06:04 +00:00
DataLayout.cpp
DebugInfo.cpp Remove llvm::getDISubprogram in favor of Function::getSubprogram 2016-03-11 02:14:16 +00:00
DebugInfoMetadata.cpp Move the DebugEmissionKind enum from DIBuilder into DICompileUnit. 2016-03-31 23:56:58 +00:00
DebugLoc.cpp Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith r259192 post commit comment. 2016-01-29 20:50:44 +00:00
DiagnosticInfo.cpp Refactor backend diagnostics for unsupported features 2016-02-02 13:52:43 +00:00
DiagnosticPrinter.cpp
DIBuilder.cpp Move the DebugEmissionKind enum from DIBuilder into DICompileUnit. 2016-03-31 23:56:58 +00:00
Dominators.cpp [PM] Make the AnalysisManager parameter to run methods a reference. 2016-03-11 11:05:24 +00:00
Function.cpp Swift Calling Convention: add swifterror attribute. 2016-04-01 21:41:15 +00:00
GCOV.cpp llvm-cov: Fix reading gcov data that does not have function names 2016-02-08 22:49:40 +00:00
Globals.cpp constify GlobalValue::getGUID() and GlobalValue::getGlobalIdentifier() (NFC) 2016-04-02 05:25:27 +00:00
GVMaterializer.cpp
InlineAsm.cpp
Instruction.cpp
Instructions.cpp Swift Calling Convention: add swifterror attribute. 2016-04-01 21:41:15 +00:00
IntrinsicInst.cpp IR: Add DbgInfoIntrinsic::getVariableLocation 2016-03-29 18:56:03 +00:00
IRBuilder.cpp Revert "Support arbitrary addrspace pointers in masked load/store intrinsics" 2016-03-22 20:24:34 +00:00
IRPrintingPasses.cpp
LegacyPassManager.cpp Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith r259192 post commit comment. 2016-01-29 20:50:44 +00:00
LLVMBuild.txt
LLVMContext.cpp 80 lines column after renaming "shouldDiscardValueNames" (NFC) 2016-04-02 03:59:58 +00:00
LLVMContextImpl.cpp
LLVMContextImpl.h Add a comment on partial hashing of Metadata 2016-03-19 01:06:24 +00:00
Mangler.cpp
MDBuilder.cpp
Metadata.cpp IR: Lazily create ReplaceableMetadataImpl on MDNode 2016-04-03 21:23:52 +00:00
MetadataImpl.h
Module.cpp Interface to get/set profile summary metadata to module 2016-03-18 21:29:30 +00:00
module.modulemap
ModuleSummaryIndex.cpp Create a typedef GlobalValue::GUID for uint64_t and RAUW (NFC) 2016-04-02 05:07:53 +00:00
Operator.cpp
Pass.cpp Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith r259192 post commit comment. 2016-01-29 20:50:44 +00:00
PassManager.cpp [PM] Implement the final conclusion as to how the analysis IDs should 2016-03-11 10:22:49 +00:00
PassRegistry.cpp
Statepoint.cpp [Statepoints] Separate out logic for statepoint directives; NFC 2016-03-17 01:56:10 +00:00
SymbolTableListTraitsImpl.h
Type.cpp
TypeFinder.cpp
Use.cpp
User.cpp
Value.cpp Rename Context::discardValueNames() to shouldDiscardValueNames() (NFC) 2016-04-02 03:46:17 +00:00
ValueSymbolTable.cpp Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith r259192 post commit comment. 2016-01-29 20:50:44 +00:00
ValueTypes.cpp Add isScalarInteger helper to EVT/MVT 2016-03-01 18:01:28 +00:00
Verifier.cpp Swift Calling Convention: add swifterror attribute. 2016-04-01 21:41:15 +00:00