1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/test/Transforms/GlobalOpt
Sergei Larin 7b219abac0 Make sure that any new and optimized objects created during GlobalOPT copy all the attributes from the base object.
Summary:
Make sure that any new and optimized objects created during GlobalOPT copy all the attributes from the base object.

A good example of improper behavior in the current implementation is section information associated with the GlobalObject. If a section was set for it, and GlobalOpt is creating/modifying a new object based on this one (often copying the original name), without this change new object will be placed in a default section, resulting in inappropriate properties of the new variable.
The argument here is that if customer specified a section for a variable, any changes to it that compiler does should not cause it to change that section allocation.
Moreover, any other properties worth representation in copyAttributesFrom() should also be propagated.

Reviewers: jmolloy, joker-eph, joker.eph

Subscribers: slarin, joker.eph, rafael, tobiasvk, llvm-commits

Differential Revision: http://reviews.llvm.org/D16074

llvm-svn: 258556
2016-01-22 21:18:20 +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
2008-12-16-HeapSRACrash-2.ll
2008-12-16-HeapSRACrash.ll
2009-01-13-phi-user.ll
2009-02-15-BitcastAlias.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
2009-02-15-ResolveAlias.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
2009-03-05-dbg.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
2009-03-06-Anonymous.ll
2009-03-07-PromotePtrToBool.ll
2009-06-01-RecursivePHI.ll
2009-11-16-BrokenPerformHeapAllocSRoA.ll
2009-11-16-MallocSingleStoreToGlobalVar.ll
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 Delete dead GlobalAliases. 2015-12-22 19:50:22 +00:00
alias-used-address-space.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
alias-used-section.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
alias-used.ll [GlobalOpt] Sort members of llvm.used deterministically 2015-09-28 19:02:11 +00:00
array-elem-refs.ll
assume.ll assume.ll test fixup 2015-08-25 01:48:49 +00:00
atexit.ll
atomic.ll
available_externally_global_ctors.ll Change hasUniqueInitializer() to call isStrongDefinitionForLinker() instead of !isWeakForLinker() 2015-12-09 16:17:07 +00:00
basictest.ll
blockaddress.ll
cleanup-pointer-root-users.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
compiler-used.ll
constantexpr-dangle.ll
constantfold-initializers.ll
crash-2.ll
crash.ll Revert "Change memcpy/memset/memmove to have dest and source alignments." 2015-11-19 05:56:52 +00:00
ctor-list-opt-constexpr.ll
ctor-list-opt-inbounds.ll
ctor-list-opt.ll
cxx-dtor.ll
deadfunction.ll
deadglobal-2.ll
deadglobal.ll Delete dead GlobalAliases. 2015-12-22 19:50:22 +00:00
externally-initialized-aggregate.ll GlobalOpt should maintain externally_initialized when splitting aggregates 2015-11-09 16:47:16 +00:00
externally-initialized-global-ctr.ll
externally-initialized.ll GlobalOpt does not treat externally_initialized globals correctly 2015-10-12 13:20:52 +00:00
fastcc.ll
global-demotion.ll [GlobalOpt] Demote globals to locals more aggressively 2015-11-15 14:21:37 +00:00
globalsra-partial.ll
globalsra-unknown-index.ll
globalsra.ll
GSROA-section.ll Make sure that any new and optimized objects created during GlobalOPT copy all the attributes from the base object. 2016-01-22 21:18:20 +00:00
heap-sra-1.ll
heap-sra-2.ll
heap-sra-3.ll
heap-sra-4.ll
heap-sra-phi.ll
integer-bool.ll
invariant-nodatalayout.ll
invariant.group.barrier.ll Introducing llvm.invariant.group.barrier intrinsic 2015-09-15 18:32:14 +00:00
invariant.ll
invoke.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
iterate.ll
load-store-global.ll
localize-constexpr.ll Delete dead GlobalAliases. 2015-12-22 19:50:22 +00:00
malloc-promote-1.ll
malloc-promote-2.ll
malloc-promote-3.ll
MallocSROA-section.ll Make sure that any new and optimized objects created during GlobalOPT copy all the attributes from the base object. 2016-01-22 21:18:20 +00:00
memcpy.ll Revert "Change memcpy/memset/memmove to have dest and source alignments." 2015-11-19 05:56:52 +00:00
memset-null.ll Revert "Change memcpy/memset/memmove to have dest and source alignments." 2015-11-19 05:56:52 +00:00
memset.ll Revert "Change memcpy/memset/memmove to have dest and source alignments." 2015-11-19 05:56:52 +00:00
metadata.ll [GlobalOpt] Demote globals to locals more aggressively 2015-11-15 14:21:37 +00:00
phi-select.ll
pr21191.ll
preserve-comdats.ll
SROA-section.ll Make sure that any new and optimized objects created during GlobalOPT copy all the attributes from the base object. 2016-01-22 21:18:20 +00:00
storepointer-compare.ll
storepointer.ll
tls.ll Implement target independent TLS compatible with glibc's emutls.c. 2015-07-28 16:24:05 +00:00
trivialstore.ll
undef-init.ll
unnamed-addr.ll Also add unnamed_addr to functions. 2015-12-22 20:43:30 +00:00
zeroinitializer-gep-load.ll