1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 19:12:56 +02:00
llvm-mirror/test/Transforms/CodeExtractor
Florian Hahn 16f8e91244 [CodeExtractor] Use subset of function attributes for extracted function.
In addition to target-dependent attributes, we can also preserve a
white-listed subset of target independent function attributes. The white-list
excludes problematic attributes, most prominently:

* attributes related to memory accesses, as alloca instructions
  could be moved in/out of the extracted block

* control-flow dependent attributes, like no_return or thunk, as the
  relerelevant instructions might or might not get extracted.

Thanks @efriedma and @aemerson for providing a set of attributes that cannot be
propagated.


Reviewers: efriedma, davidxl, davide, silvas

Reviewed By: efriedma

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

llvm-svn: 321961
2018-01-07 11:22:25 +00:00
..
X86
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 [CodeExtractor] Prevent extraction of block involving blockaddress 2017-06-27 18:57:53 +00:00
BlockAddressSelfReference.ll Clean up a test case 2017-06-27 21:35:49 +00:00
cost_meta.ll
cost.ll
ExtractedFnEntryCount.ll
live_shrink_gep.ll
live_shrink_hoist.ll [CodeExtractor] Fix iterator invalidation in findOrCreateBlockForHoisting. 2017-11-01 09:48:12 +00:00
live_shrink_multiple.ll
live_shrink_unsafe.ll
live_shrink.ll
MultipleExitBranchProb.ll
PartialInlineAlloca2.ll
PartialInlineAlloca4.ll
PartialInlineAlloca5.ll
PartialInlineAlloca.ll
PartialInlineAnd.ll
PartialInlineAndOr.ll
PartialInlineAttributes.ll [CodeExtractor] Use subset of function attributes for extracted function. 2018-01-07 11:22:25 +00:00
PartialInlineCallRef.ll
PartialInlineDebug.ll [CodeExtractor] Add debug locations for new call and branch instrs. 2017-12-08 21:49:03 +00:00
PartialInlineEntryUpdate.ll
PartialInlineHighCost.ll
PartialInlineLiveAcross.ll
PartialInlineNoInline.ll [PartialInliner] Skip call sites where inlining fails. 2017-11-03 11:29:00 +00:00
PartialInlineNoLiveOut.ll
PartialInlineOptRemark.ll
PartialInlineOr.ll
PartialInlineOrAnd.ll
PartialInlinePGOMultiRegion.ll - Removed unused lamba (IsReturnBlock) causing build bots to fail for r319398 2017-11-30 03:36:57 +00:00
PartialInlinePGORegion.ll - Removed unused lamba (IsReturnBlock) causing build bots to fail for r319398 2017-11-30 03:36:57 +00:00
PartialInlineVarArg.ll [PartialInliner] Inline vararg functions that forward varargs. 2017-11-13 10:35:52 +00:00
PartialInlineVarArgsDebug.ll [InlineFunction] Set debug loc for call to forward varargs. 2017-12-09 14:25:33 +00:00
SingleCondition.ll
unreachable-block.ll