llvm-project/llvm/lib/IR
Duncan P. N. Exon Smith 05ebfd0938 IR: Use ODR to unique DICompositeType members
Merge members that are describing the same member of the same ODR type,
even if other bits differ.  If the file or line differ, we don't care;
if anything else differs, it's an ODR violation (and we still don't
really care).

For DISubprogram declarations, this looks at the LinkageName and Scope.
For DW_TAG_member instances of DIDerivedType, this looks at the Name and
Scope.  In both cases, we know that the Scope follows ODR rules if it
has a non-empty identifier.

llvm-svn: 266548
2016-04-17 02:30:20 +00:00
..
AsmWriter.cpp [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
AttributeImpl.h Add the allocsize attribute to LLVM. 2016-04-12 01:05:35 +00:00
Attributes.cpp Attempt to make buildbot happier with r266032. 2016-04-12 01:44:13 +00:00
AttributesCompatFunc.td Provide a way to specify inliner's attribute compatibility and merging. 2015-12-22 23:57:37 +00:00
AutoUpgrade.cpp use range loop, try to make comments more meaningful; NFCI 2016-04-16 23:26:16 +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 fix documentation comments; NFC 2016-04-05 18:23:30 +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: Introduce ConstantAggregate, NFC 2016-04-05 21:10:45 +00:00
ConstantsContext.h IR: Use DenseSet instead of DenseMap for ConstantUniqueMap; NFC 2016-04-06 17:56:08 +00:00
Core.cpp Nuke getGlobalContext() from LLVM (but the C API) 2016-04-14 21:59:18 +00:00
DIBuilder.cpp [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
DataLayout.cpp Replace Type::getInt32Ty() and comparison by isIntegerTy(32). NFC. 2016-01-22 03:30:27 +00:00
DebugInfo.cpp [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
DebugInfoMetadata.cpp [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +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 MIR Serialization: Connect the machine function analysis pass to the MIR parser. 2015-06-15 20:30:22 +00:00
Dominators.cpp [PM] Make the AnalysisManager parameter to run methods a reference. 2016-03-11 11:05:24 +00:00
Function.cpp IRMover: Steal arguments when moving functions, NFC 2016-04-06 06:38: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
GVMaterializer.cpp
Globals.cpp [GCC] Attribute ifunc support in llvm 2016-04-07 12:32:19 +00:00
IRBuilder.cpp Revert "Support arbitrary addrspace pointers in masked load/store intrinsics" 2016-04-14 08:47:17 +00:00
IRPrintingPasses.cpp Recommit r256952 "Filtering IR printing for print-after-all/print-before-all" 2016-01-06 22:55:03 +00:00
InlineAsm.cpp Fix SEGV in InlineAsm::ConstraintInfo::Parse. 2015-09-03 15:41:37 +00:00
Instruction.cpp Check alloca's special state 2016-04-12 18:06:55 +00:00
Instructions.cpp [DivergenceAnalysis] Treat PHI with incoming undef as constant 2016-04-14 17:42:47 +00:00
IntrinsicInst.cpp IR: Add DbgInfoIntrinsic::getVariableLocation 2016-03-29 18:56:03 +00:00
LLVMBuild.txt
LLVMContext.cpp Nuke getGlobalContext() from LLVM (but the C API) 2016-04-14 21:59:18 +00:00
LLVMContextImpl.cpp IR: Use DenseSet instead of DenseMap for ConstantUniqueMap; NFC 2016-04-06 17:56:08 +00:00
LLVMContextImpl.h IR: Use ODR to unique DICompositeType members 2016-04-17 02:30:20 +00:00
LegacyPassManager.cpp Annotate dump() methods with LLVM_DUMP_METHOD, addressing Richard Smith r259192 post commit comment. 2016-01-29 20:50:44 +00:00
MDBuilder.cpp [MDBuilder] Simplify code using initializer lists. NFC. 2015-11-22 18:03:17 +00:00
Mangler.cpp Update to use new name alignTo(). 2016-01-14 21:06:47 +00:00
Metadata.cpp IR: Lazily create ReplaceableMetadataImpl on MDNode 2016-04-03 21:23:52 +00:00
MetadataImpl.h DI: Disallow uniquable DICompileUnits 2015-08-03 17:26:41 +00:00
Module.cpp Support the Nodebug emission kind for DICompileUnits. 2016-04-08 22:43:03 +00:00
ModuleSummaryIndex.cpp ThinLTO: Move the ODR resolution to be based purely on the summary. 2016-04-16 07:02:16 +00:00
Operator.cpp [opaque pointer types] [NFC] GEP: replace get(Pointer)ElementType uses with get{Source,Result}ElementType. 2016-01-19 17:28:00 +00:00
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 Revert r231276 (including r231277): Add a lock() function in PassRegistry to speed up multi-thread synchronization. 2015-03-05 17:53:00 +00:00
Statepoint.cpp Introduce an GCRelocateInst class [NFC] 2016-04-12 18:05:10 +00:00
SymbolTableListTraitsImpl.h IR: Remove implicit iterator conversions from lib/IR, NFC 2015-10-08 23:49:46 +00:00
Type.cpp [IR] Mark the Type subclass helper methods 'inline' and move their definitions to DerivedTypes.h so they can be inlined by the compiler. 2015-12-25 04:06:20 +00:00
TypeFinder.cpp Re-reapply "[IR] Move optional data in llvm::Function into a hungoff uselist" 2015-12-19 08:52:49 +00:00
Use.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
User.cpp [IR] Teach `llvm::User` to co-allocate a descriptor. 2015-09-24 01:00:49 +00:00
Value.cpp Don't IPO over functions that can be de-refined 2016-04-08 00:48:30 +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 [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00