llvm-6502/lib/IR
David Blaikie b86fbcb08c Simplify destruction of Modules in LLVContextImpl.
This avoids copying the container by simply deleting until empty.

While I'd rather move to a stricter ownership semantic (unique_ptr),
SmallPtrSet can't cope with unique_ptr and the ownership semantics here
are a bit incestuous (Module sort of owns itself, but sort of doesn't
(if the LLVMContext is destroyed before the Module, then it deregisters
itself from the context... )).

Ideally Modules would be given to the context, or possibly an
emplace-like function to construct them there. Modules then shouldn't be
destroyed by LLVM API clients, but by interacting with the owner
(LLVMContext) directly (but even then, passing a Module* to LLVMContext
doesn't provide an easy way to destroy the Module, since the set would
be over unique_ptrs and you'd need a heterogenous lookup function which
SmallPtrSet doesn't have either).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206794 91177308-0d34-0410-b5e6-96231b3b80d8
2014-04-21 21:27:19 +00:00
..
AsmWriter.cpp Break PseudoSourceValue out of the Value hierarchy. It is now the root of its own tree containing FixedStackPseudoSourceValue (which you can use isa/dyn_cast on) and MipsCallEntry (which you can't). Anything that needs to use either a PseudoSourceValue* and Value* is strongly encouraged to use a MachinePointerInfo instead. 2014-04-15 07:22:52 +00:00
AsmWriter.h IR: add a second ordering operand to cmpxhg for failure 2014-03-11 10:48:52 +00:00
AttributeImpl.h [C++11] Add 'override' keyword to IR library. 2014-03-05 06:35:38 +00:00
Attributes.cpp Retire llvm::array_endof in favor of non-member std::end. 2014-04-12 16:15:53 +00:00
AutoUpgrade.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
BasicBlock.cpp [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-15 06:32:26 +00:00
CMakeLists.txt Move MDBuilder's methods out of line. 2014-04-12 14:26:59 +00:00
ConstantFold.cpp [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-15 06:32:26 +00:00
ConstantFold.h
ConstantRange.cpp [Modules] Move the ConstantRange class into the IR library. This is 2014-03-04 12:24:34 +00:00
Constants.cpp [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-15 06:32:26 +00:00
ConstantsContext.h [C++11] Add 'override' keyword to IR library. 2014-03-05 06:35:38 +00:00
Core.cpp Added new functionality to LLVM C API to use DiagnosticInfo to handle errors 2014-04-16 17:45:04 +00:00
DataLayout.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
DebugInfo.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
DebugLoc.cpp [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-15 06:32:26 +00:00
DiagnosticInfo.cpp Fix use-after-free bug caught by address sanitizer: 2014-04-11 13:55:56 +00:00
DiagnosticPrinter.cpp Report a warning when dropping outdated debug info metadata. 2014-01-16 01:51:12 +00:00
DIBuilder.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
Dominators.cpp [Modules] Move CFG.h to the IR library as it defines graph traits over 2014-03-04 11:45:46 +00:00
Function.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
GCOV.cpp llvm-cov: Handle functions with no line number 2014-03-26 22:03:06 +00:00
Globals.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
GVMaterializer.cpp [Layering] Move GVMaterializer.h into the IR library where its 2014-03-06 03:50:29 +00:00
InlineAsm.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
Instruction.cpp [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-15 06:32:26 +00:00
Instructions.cpp [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-15 06:32:26 +00:00
IntrinsicInst.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
IRBuilder.cpp
IRPrintingPasses.cpp [C++11] Add 'override' keyword to IR library. 2014-03-05 06:35:38 +00:00
LeakDetector.cpp [Modules] Move the LeakDetector header into the IR library where the 2014-03-04 12:46:06 +00:00
LeaksContext.h Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
LegacyPassManager.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
LLVMBuild.txt
LLVMContext.cpp Allow diagnostic handlers to check for optimization remarks. 2014-04-16 16:53:41 +00:00
LLVMContextImpl.cpp Simplify destruction of Modules in LLVContextImpl. 2014-04-21 21:27:19 +00:00
LLVMContextImpl.h Add -pass-remarks flag to 'opt'. 2014-04-08 16:42:38 +00:00
Makefile Actually update the CMake and Makefile builds correctly, and update the 2013-01-02 12:09:16 +00:00
Mangler.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
MDBuilder.cpp [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-15 06:32:26 +00:00
Metadata.cpp [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-15 06:32:26 +00:00
Module.cpp Fix bug 19437 - Only add discriminators for DWARF 4 and above. 2014-04-17 22:33:50 +00:00
Pass.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
PassManager.cpp [PM] Fix a bug where we didn't properly clear the list map when the list 2014-04-21 11:11:54 +00:00
PassRegistry.cpp Use unique_ptr to manage PassInfo instances in the PassRegistry 2014-04-15 15:17:14 +00:00
SymbolTableListTraitsImpl.h
Type.cpp [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-15 06:32:26 +00:00
TypeFinder.cpp TypeFinder: prefer iterative algorithm to keep stack usage low. 2013-10-16 04:10:06 +00:00
Use.cpp Fix some doc and comment typos 2014-04-09 14:47:27 +00:00
User.cpp Disable Visual C++ warning 4722 about aborting a destructor, 2014-03-25 08:42:49 +00:00
Value.cpp [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-15 06:32:26 +00:00
ValueSymbolTable.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
ValueTypes.cpp Add v4f16 to supported value types. 2013-10-03 03:29:21 +00:00
Verifier.cpp verify-di: Add back braces for MSVC compatability 2014-04-15 17:28:26 +00:00