llvm-project/llvm/test/Transforms/CodeExtractor
Vedant Kumar 17d9f14bff [CodeExtractor] Emit lifetime markers around reloads of outputs
CodeExtractor permits extracting a region of blocks from a function even
when values defined within the region are used outside of it.

This is typically done by creating an alloca in the original function
and reloading the alloca after a call to the extracted function.

Wrap the reload in lifetime start/end markers to promote stack coloring.

Suggested by Sergei Kachkov!

Differential Revision: https://reviews.llvm.org/D56045

llvm-svn: 351621
2019-01-19 02:37:59 +00:00
..
X86 [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
2004-03-13-LoopExtractorCrash.ll
2004-03-14-DominanceProblem.ll
2004-03-14-NoSwitchSupport.ll
2004-03-17-MissedLiveIns.ll
2004-03-17-UpdatePHIsOutsideRegion.ll
2004-03-18-InvokeHandling.ll
2004-08-12-BlockExtractPHI.ll
2004-11-12-InvokeExtract.ll
BlockAddressReference.ll
BlockAddressSelfReference.ll
ExtractedFnEntryCount.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
MultipleExitBranchProb.ll
PartialInlineAlloca.ll
PartialInlineAlloca2.ll
PartialInlineAlloca4.ll [CodeExtractor] Do not extract unsafe lifetime markers 2019-01-04 17:43:22 +00:00
PartialInlineAlloca5.ll [CodeExtractor] Do not extract unsafe lifetime markers 2019-01-04 17:43:22 +00:00
PartialInlineAnd.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
PartialInlineAndOr.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
PartialInlineAttributes.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
PartialInlineCallRef.ll
PartialInlineDebug.ll [CodeExtractor] Emit lifetime markers around reloads of outputs 2019-01-19 02:37:59 +00:00
PartialInlineEntryPHICost.ll [PartialInliner] Make PHIs free in cost computation. 2018-11-27 18:17:27 +00:00
PartialInlineEntryUpdate.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
PartialInlineHighCost.ll
PartialInlineInvokeProducesOutVal.ll [CodeExtractor] Emit lifetime markers around reloads of outputs 2019-01-19 02:37:59 +00:00
PartialInlineLiveAcross.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
PartialInlineNoInline.ll
PartialInlineNoLiveOut.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
PartialInlineNotViable.ll
PartialInlineORECrash.ll
PartialInlineOptRemark.ll
PartialInlineOr.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
PartialInlineOrAnd.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
PartialInlinePGOMultiRegion.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
PartialInlinePGORegion.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
PartialInlineVarArg.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
PartialInlineVarArgsDebug.ll [CodeExtractor] Emit lifetime markers around reloads of outputs 2019-01-19 02:37:59 +00:00
SingleCondition.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
cost.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
cost_meta.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
inline_eh.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
inline_eh_1.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
live_shrink.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
live_shrink_gep.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
live_shrink_hoist.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
live_shrink_multiple.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00
live_shrink_unsafe.ll
unreachable-block.ll [hot-cold-split] Name split functions with ".cold" suffix 2018-10-24 18:53:47 +00:00