llvm-6502/lib/Transforms/IPO
Bill Wendling dd36ddfaec Merging r197178:
------------------------------------------------------------------------
r197178 | hfinkel | 2013-12-12 12:45:24 -0800 (Thu, 12 Dec 2013) | 9 lines

Fix a use-after-free error in GlobalOpt CleanupConstantGlobalUsers

GlobalOpt's CleanupConstantGlobalUsers function uses a worklist array to manage
constant users to be visited. The pointers in this array need to be weak
handles because when we delete a constant array, we may also be holding a
pointer to one of its elements (or an element of one of its elements if we're
dealing with an array of arrays) in the worklist.

Fixes PR17347.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_34@197322 91177308-0d34-0410-b5e6-96231b3b80d8
2013-12-14 08:04:09 +00:00
..
ArgumentPromotion.cpp ArgumentPromotion: correctly transfer TBAA tags and alignments. 2013-11-15 20:41:15 +00:00
BarrierNoopPass.cpp
CMakeLists.txt
ConstantMerge.cpp Corruptly merge constants with explicit and implicit alignments. 2013-11-12 20:21:43 +00:00
DeadArgumentElimination.cpp
ExtractGV.cpp Merging r195477: 2013-11-25 05:20:58 +00:00
FunctionAttrs.cpp Merge CallGraph and BasicCallGraph. 2013-10-31 03:03:55 +00:00
GlobalDCE.cpp
GlobalOpt.cpp Merging r197178: 2013-12-14 08:04:09 +00:00
InlineAlways.cpp Merge CallGraph and BasicCallGraph. 2013-10-31 03:03:55 +00:00
Inliner.cpp
InlineSimple.cpp Spell "Actual" correctly 2013-11-03 11:09:39 +00:00
Internalize.cpp Use LTO_SYMBOL_SCOPE_DEFAULT_CAN_BE_HIDDEN instead of the "dso list". 2013-10-31 20:51:58 +00:00
IPConstantPropagation.cpp
IPO.cpp Use LTO_SYMBOL_SCOPE_DEFAULT_CAN_BE_HIDDEN instead of the "dso list". 2013-10-31 20:51:58 +00:00
LLVMBuild.txt
LoopExtractor.cpp
Makefile
MergeFunctions.cpp Merging r195769: 2013-11-27 04:52:57 +00:00
PartialInlining.cpp
PassManagerBuilder.cpp Add a loop rerolling flag to the PassManagerBuilder 2013-11-17 16:02:50 +00:00
PruneEH.cpp Merge CallGraph and BasicCallGraph. 2013-10-31 03:03:55 +00:00
StripDeadPrototypes.cpp
StripSymbols.cpp Merging r195505: 2013-12-09 21:00:02 +00:00