llvm-6502/include/llvm
David Majnemer a32748ff23 Merging r222338:
------------------------------------------------------------------------
r222338 | majnemer | 2014-11-19 01:41:05 -0800 (Wed, 19 Nov 2014) | 16 lines

AliasSetTracker: UnknownInsts should contribute to the refcount

AliasSetTracker::addUnknown may create an AliasSet devoid of pointers
just to contain an instruction if no suitable AliasSet already exists.
It will then AliasSet::addUnknownInst and we will be done.

However, it's possible for addUnknown to choose an existing AliasSet to
addUnknownInst.
If this were to occur, we are in a bit of a pickle: removing pointers
from the AliasSet can cause the entire AliasSet to become destroyed,
taking our unknown instructions out with them.

Instead, keep track whether or not our AliasSet has any unknown
instructions.

This fixes PR21582.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_35@223627 91177308-0d34-0410-b5e6-96231b3b80d8
2014-12-08 08:48:09 +00:00
..
ADT Add MIPS Technologies to the vendors in llvm::Triple. 2014-07-18 14:28:19 +00:00
Analysis Merging r222338: 2014-12-08 08:48:09 +00:00
AsmParser Move the LLVM IR asm writer header files into the IR directory, as they 2014-01-07 12:34:26 +00:00
Bitcode Add a dereferenceable attribute 2014-07-18 15:51:28 +00:00
CodeGen Moved [ASZ]ExtUpper to the end of the CCValAssign::LocInfo enum. 2014-12-03 17:21:26 +00:00
Config Merging r213966: 2014-08-04 18:36:56 +00:00
DebugInfo [DWARF parser] Teach DIContext to fetch short (non-linkage) function names for a given address. 2014-05-17 00:07:48 +00:00
ExecutionEngine [RuntimeDyld] Improve error diagnostic in RuntimeDyldChecker. 2014-07-10 23:26:20 +00:00
IR Revert "[C++11] Add predecessors(BasicBlock *) / successors(BasicBlock *) iterator ranges." 2014-07-21 17:06:51 +00:00
IRReader Make a helper function static. No functionality change. 2014-07-05 00:39:08 +00:00
LineEditor [C++11] Replace OwningPtr with std::unique_ptr in places where it doesn't break the API. 2014-04-21 09:34:48 +00:00
Linker IR: Add COMDATs to the IR 2014-06-27 18:19:56 +00:00
LTO Implement LTOModule on top of IRObjectFile. 2014-07-04 18:40:36 +00:00
MC [MC] Pass MCSymbolData to needsRelocateWithSymbol 2014-07-20 23:15:06 +00:00
Object Correct the ownership passing semantics of object::createBinary and make them explicit in the type system. 2014-07-21 16:26:24 +00:00
Option Option: Propagate flags from groups to options in each group 2014-07-12 00:18:58 +00:00
ProfileData ProfileData: Fix copy-paste type in RawInstrProfReader 2014-06-18 18:20:44 +00:00
Support [PowerPC] ELFv2 MC support for .localentry directive 2014-07-20 23:06:03 +00:00
TableGen Revert "Introduce a string_ostream string builder facilty" 2014-06-26 22:52:05 +00:00
Target Merged from r221518: 2014-12-01 17:05:38 +00:00
Transforms MergedLoadStoreMotion pass 2014-07-18 19:13:09 +00:00
CMakeLists.txt [modules] Add module maps for LLVM. These are not quite ready for prime-time 2014-05-21 02:46:14 +00:00
InitializePasses.h Templatify RegionInfo so it works on MachineBasicBlocks 2014-07-19 18:29:29 +00:00
LinkAllIR.h [cleanup] Move the Dominators.h and Verifier.h headers into the IR 2014-01-13 09:26:24 +00:00
LinkAllPasses.h MergedLoadStoreMotion pass 2014-07-18 19:13:09 +00:00
module.modulemap [modules] Add module maps for LLVM. These are not quite ready for prime-time 2014-05-21 02:46:14 +00:00
module.modulemap.build [modules] Add module maps for LLVM. These are not quite ready for prime-time 2014-05-21 02:46:14 +00:00
Pass.h Revert "[PM] Add pass run listeners to the pass manager." 2014-05-15 17:49:20 +00:00
PassAnalysisSupport.h [C++11] More 'nullptr' conversion. In some cases just using a boolean check instead of comparing to nullptr. 2014-04-14 00:51:57 +00:00
PassInfo.h Remove pimpl class from PassRegistry. 2014-06-12 16:06:51 +00:00
PassManager.h
PassRegistry.h Remove pimpl class from PassRegistry. 2014-06-12 16:06:51 +00:00
PassSupport.h Move GlobalMerge from Transform to CodeGen. 2014-06-13 22:57:59 +00:00