llvm-6502/test/Transforms/GlobalOpt
Reid Kleckner 8577eaf8e6 GlobalOpt: Preserve comdats of unoptimized initializers
Rather than slurping in and splatting out the whole ctor list, preserve
the existing array entries without trying to understand them.  Only
remove the entries that we know we can optimize away.  This way we don't
need to wire through priority and comdats or anything else we might add.

Fixes a linker issue where the .init_array or .ctors entry would point
to discarded initialization code if the comdat group from the TU with
the faulty global_ctors entry was dropped.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218337 91177308-0d34-0410-b5e6-96231b3b80d8
2014-09-23 22:33:01 +00:00
..
2004-10-10-CastStoreOnce.ll
2005-06-15-LocalizeConstExprCrash.ll
2005-09-27-Crash.ll
2006-07-07-InlineAsmCrash.ll
2006-11-01-ShrinkGlobalPhiCrash.ll
2007-04-05-Crash.ll
2007-05-13-Crash.ll
2007-06-04-PackedStruct.ll
2007-11-09-GEP-GEP-Crash.ll
2008-01-03-Crash.ll
2008-01-13-OutOfRangeSROA.ll
2008-01-29-VolatileGlobal.ll
2008-04-26-SROA-Global-Align.ll
2008-07-17-addrspace.ll Quote potential shell expansions found in tests 2013-10-28 23:37:45 +00:00
2008-12-16-HeapSRACrash-2.ll
2008-12-16-HeapSRACrash.ll
2009-01-13-phi-user.ll
2009-02-15-BitcastAlias.ll Allow alias to point to an arbitrary ConstantExpr. 2014-06-03 02:41:57 +00:00
2009-02-15-ResolveAlias.ll Use "weak alias" instead of "alias weak" 2014-07-30 22:51:54 +00:00
2009-03-05-dbg.ll
2009-03-06-Anonymous.ll GlobalOpt: Don't swap private for internal linkage 2014-07-01 15:26:50 +00:00
2009-03-07-PromotePtrToBool.ll Revert r193251 : Use address-taken to disambiguate global variable and indirect memops. 2013-10-27 03:08:44 +00:00
2009-06-01-RecursivePHI.ll
2009-11-16-BrokenPerformHeapAllocSRoA.ll
2009-11-16-MallocSingleStoreToGlobalVar.ll Revert r193251 : Use address-taken to disambiguate global variable and indirect memops. 2013-10-27 03:08:44 +00:00
2010-02-25-MallocPromote.ll
2010-02-26-MallocSROA.ll
2010-10-19-WeakOdr.ll
2011-04-09-EmptyGlobalCtors.ll
2012-05-11-blockaddress.ll
alias-resolve.ll Use "weak alias" instead of "alias weak" 2014-07-30 22:51:54 +00:00
alias-used-address-space.ll Use "weak alias" instead of "alias weak" 2014-07-30 22:51:54 +00:00
alias-used-section.ll Use "weak alias" instead of "alias weak" 2014-07-30 22:51:54 +00:00
alias-used.ll Use "weak alias" instead of "alias weak" 2014-07-30 22:51:54 +00:00
array-elem-refs.ll Fix a use-after-free error in GlobalOpt CleanupConstantGlobalUsers 2013-12-12 20:45:24 +00:00
atexit.ll IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
atomic.ll Revert r193251 : Use address-taken to disambiguate global variable and indirect memops. 2013-10-27 03:08:44 +00:00
basictest.ll
blockaddress.ll
cleanup-pointer-root-users.ll
compiler-used.ll
constantexpr-dangle.ll
constantfold-initializers.ll GlobalOpt: Optimize in the face of insertvalue/extractvalue 2014-08-08 05:50:43 +00:00
crash-2.ll
crash.ll
ctor-list-opt-constexpr.ll
ctor-list-opt-inbounds.ll
ctor-list-opt.ll Add comdat key field to llvm.global_ctors and llvm.global_dtors 2014-05-16 20:39:27 +00:00
cxx-dtor.ll
deadfunction.ll
deadglobal-2.ll
deadglobal.ll
externally-initialized-global-ctr.ll
fastcc.ll GlobalOpt: Apply fastcc to internal x86_thiscallcc functions 2014-02-26 19:57:30 +00:00
globalsra-partial.ll
globalsra-unknown-index.ll Revert r193251 : Use address-taken to disambiguate global variable and indirect memops. 2013-10-27 03:08:44 +00:00
globalsra.ll
heap-sra-1.ll
heap-sra-2.ll
heap-sra-3.ll
heap-sra-4.ll
heap-sra-phi.ll
integer-bool.ll Revert r204076 for now - it caused significant regressions in a number of 2014-03-23 04:22:31 +00:00
invariant-nodatalayout.ll
invariant.ll
invoke.ll
iterate.ll
load-store-global.ll
malloc-promote-1.ll
malloc-promote-2.ll
malloc-promote-3.ll
memcpy.ll
memset-null.ll
memset.ll Delete unread globals through addrspacecast 2014-01-02 20:01:43 +00:00
metadata.ll
phi-select.ll
preserve-comdats.ll GlobalOpt: Preserve comdats of unoptimized initializers 2014-09-23 22:33:01 +00:00
storepointer-compare.ll
storepointer.ll
tls.ll
trivialstore.ll
undef-init.ll
unnamed-addr.ll Revert r193251 : Use address-taken to disambiguate global variable and indirect memops. 2013-10-27 03:08:44 +00:00
zeroinitializer-gep-load.ll