1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 19:23:23 +01:00
llvm-mirror/test/Transforms/Inline
Craig Topper 7b62f7d2d8 [Inliner] Modify the merging of min-legal-vector-width attribute to better handle when the caller or callee don't have the attribute.
Lack of an attribute means that the function hasn't been checked for what vector width it requires. So if the caller or the callee doesn't have the attribute we should make sure the combined function after inlining does not have the attribute.

If the caller already doesn't have the attribute we can just avoid adding it. Otherwise if the callee doesn't have the attribute just remove the caller's attribute.

llvm-svn: 347841
2018-11-29 07:27:38 +00:00
..
AArch64 [InlineCost] Find more free binary operations 2017-12-22 17:09:09 +00:00
AMDGPU AMDGPU: Use a custom areInlineCompatible 2017-08-07 17:08:44 +00:00
ARM [Inliner] Penalise inlining of calls with loops at Oz 2018-11-05 14:54:34 +00:00
PowerPC [TTI] Refine the cost of EXT in getUserCost() 2017-07-15 02:12:16 +00:00
X86 [TTI] Refine the cost of EXT in getUserCost() 2017-07-15 02:12:16 +00:00
2003-09-14-InlineValue.ll
2003-09-22-PHINodeInlineFail.ll
2003-09-22-PHINodesInExceptionDest.ll
2003-09-22-PHINodesInNormalInvokeDest.ll
2003-10-13-AllocaDominanceProblem.ll
2004-04-15-InlineDeletesCall.ll
2004-04-20-InlineLinkOnce.ll
2004-10-17-InlineFunctionWithoutReturn.ll
2006-01-14-CallGraphUpdate.ll
2006-07-12-InlinePruneCGUpdate.ll
2006-11-09-InlineCGUpdate-2.ll
2006-11-09-InlineCGUpdate.ll
2007-04-15-InlineEH.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
2007-06-25-WeakInline.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
2007-12-19-InlineNoUnwind.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
2008-09-02-NoInline.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
2009-01-08-NoInlineDynamicAlloca.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
2009-01-13-RecursiveInlineCrash.ll
2009-05-07-CallUsingSelfCrash.ll
2010-05-12-ValueMap.ll
align.ll
alloca_test.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
alloca-bonus.ll Add address space mangling to lifetime intrinsics 2017-04-10 20:18:21 +00:00
alloca-dbgdeclare-merge.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
alloca-dbgdeclare.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
alloca-in-scc.ll
alloca-merge-align.ll
always-inline.ll Revert "CallGraphSCCPass: iterate over all functions." 2018-07-13 16:32:31 +00:00
arg-attr-propagation.ll Revert r296366 "[InlineFunction] add nonnull assumptions based on argument attributes" 2017-02-27 22:33:02 +00:00
array_merge.ll
array-alloca.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
attributes.ll [x86/SLH] Add a real Clang flag and LLVM IR attribute for Speculative 2018-09-04 12:38:00 +00:00
basictest.ll Inliner: Don't touch indirect calls 2017-06-09 03:29:20 +00:00
bfi-update.ll Fix a bug in caller's BFI update code after inlining. 2017-02-14 22:49:28 +00:00
blockaddress.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
byval_lifetime.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
byval-tail-call.ll [TailCallElim] Enable marking of calls with byval as tails 2018-10-08 18:03:40 +00:00
byval.ll Avoid inlining if there is byval arguments with non-alloca address space 2018-01-10 13:01:18 +00:00
callgraph-update.ll
casts.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
cfg_preserve_test.ll [Inliner] Modernize all of the inliner tests that were using grep. 2016-12-27 02:47:37 +00:00
cgscc-cycle.ll [PM] keeping history when original SCC split and then merge into itself 2018-10-23 23:29:45 +00:00
cgscc-incremental-invalidate.ll [New PM] Introducing PassInstrumentation framework 2018-09-20 17:08:45 +00:00
cgscc-invalidate.ll [PM/Inliner] Make the new PM's inliner process call edges across an 2017-03-09 11:35:40 +00:00
cgscc-update.ll [PM][FunctionAttrs] add NoUnwind attribute inference to PostOrderFunctionAttrs pass 2018-03-23 21:46:16 +00:00
clear-analyses.ll [PH] Replace uses of AssertingVH from members of analysis results with 2017-01-24 12:55:57 +00:00
comdat-ipo.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
crash2.ll
crash-lifetime-marker.ll Add address space mangling to lifetime intrinsics 2017-04-10 20:18:21 +00:00
crash.ll
debug-info-duplicate-calls.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
debug-invoke.ll
delete-call.ll
deopt-bundles.ll
deoptimize-intrinsic-cconv.ll
deoptimize-intrinsic.ll NFC - Various typo fixes in tests 2018-07-04 13:28:39 +00:00
devirtualize-2.ll [PM] Introduce a devirtualization iteration layer for the new PM. 2016-12-28 11:07:33 +00:00
devirtualize-3.ll
devirtualize.ll
dynamic_alloca_test.ll
ephemeral.ll [InlineCost] Reduce inline thresholds to compensate for cost changes 2016-11-28 11:07:37 +00:00
externally_available.ll [Inliner] Modernize all of the inliner tests that were using grep. 2016-12-27 02:47:37 +00:00
frameescape.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
function-count-update-2.ll Improve PGO support for the new inliner 2017-01-20 22:44:04 +00:00
function-count-update-3.ll Improve PGO support for the new inliner 2017-01-20 22:44:04 +00:00
function-count-update.ll Improve PGO support for the new inliner 2017-01-20 22:44:04 +00:00
guard-intrinsic.ll
gvn-inline-iteration.ll
ignore-debug-info.ll Remove the obsolete offset parameter from @llvm.dbg.value 2017-07-28 20:21:02 +00:00
inalloca-not-static.ll [PM] Wire up another test to the new pass manager. 2016-12-27 06:46:16 +00:00
infinite-loop-two-predecessors.ll [CloneFunction] Constant fold terminators before checking single predecessor 2018-08-28 12:40:11 +00:00
inline_cleanup.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
inline_constprop.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
inline_dbg_declare.ll [DebugInfo] Add DILabel metadata and intrinsic llvm.dbg.label. 2018-05-09 02:40:45 +00:00
inline_dce.ll [Inliner] Modernize all of the inliner tests that were using grep. 2016-12-27 02:47:37 +00:00
inline_inv_group.ll ConstantFolding: Avoid a crash. 2018-07-23 21:20:00 +00:00
inline_invoke.ll [PM] Move the collection of call sites to a more appropriate place 2016-12-27 01:24:50 +00:00
inline_minisize.ll
inline_prune.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
inline_returns_twice.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
inline_ssp.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
inline_stats.ll [ThinLTO] Port InlinerFunctionImportStats handling to new PM 2018-06-28 20:07:47 +00:00
inline_unreachable-2.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
inline_unreachable.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
inline-assume.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
inline-brunch-funnel.ll Don't inline @llvm.icall.branch.funnel 2018-04-04 21:46:27 +00:00
inline-byval-bonus.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
inline-cold-callee.ll Improve PGO support for the new inliner 2017-01-20 22:44:04 +00:00
inline-cold-callsite-pgo.ll [NewPM/Inliner] Reduce threshold for cold callsites in the non-PGO case 2017-06-27 23:11:18 +00:00
inline-cold-callsite-samplepgo.ll Move accurate-sample-profile into the function attribute. 2017-08-24 21:37:04 +00:00
inline-cold-callsite.ll [NewPM/Inliner] Reduce threshold for cold callsites in the non-PGO case 2017-06-27 23:11:18 +00:00
inline-cold.ll Decrease inlinecold-threshold to 45 2017-05-11 21:36:28 +00:00
inline-constexpr-addrspacecast-argument.ll ConstantFold: Handle gep nonnull, undef as well 2017-05-08 17:37:33 +00:00
inline-fast-math-flags.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
inline-funclets.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
inline-hot-callee.ll [Inliner] Do not mix callsite and callee hotness based updates. 2017-05-16 21:18:09 +00:00
inline-hot-callsite-2.ll Improve PGO support for the new inliner 2017-01-20 22:44:04 +00:00
inline-hot-callsite.ll [PM] Add ProfileSummaryAnalysis as a required pass in the new pipeline. 2017-05-04 16:58:45 +00:00
inline-indirect.ll
inline-invoke-tail.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
inline-invoke-with-asm-call.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
inline-min-legal-vector-width.ll [Inliner] Modify the merging of min-legal-vector-width attribute to better handle when the caller or callee don't have the attribute. 2018-11-29 07:27:38 +00:00
inline-optnone.ll
inline-optsize.ll [InlineCost] Remove skew when calculating call costs 2016-11-14 11:14:41 +00:00
inline-probe-stack.ll Add a "probe-stack" attribute 2017-06-21 18:46:50 +00:00
inline-remark.ll [Inliner] Attribute callsites with inline remarks 2018-08-28 15:27:25 +00:00
inline-stack-probe-size.ll Define behavior of "stack-probe-size" attribute when inlining. 2017-06-22 23:22:36 +00:00
inline-tail.ll Treat inlining a notail call as a regular, non-tail call 2018-04-02 21:23:16 +00:00
inline-threshold.ll
inline-varargs.ll [inline Cost] Don't mark functions accessing varargs as non-inlinable 2018-09-20 18:39:34 +00:00
inline-vla.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
internal-scc-members.ll [PM/Inliner] Fix a bug in r297374 where we would leave stale calls in 2017-03-16 10:45:42 +00:00
invoke_test-1.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
invoke_test-2.ll [Inliner] Modernize all of the inliner tests that were using grep. 2016-12-27 02:47:37 +00:00
invoke_test-3.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
invoke-cleanup.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
invoke-combine-clauses.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
invoke-cost.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
label-annotation.ll Add llvm.codeview.annotation to implement MSVC __annotation 2017-09-05 20:14:58 +00:00
last-call-bonus.ll [PM] Split LoopUnrollPass and make partial unroller a function pass 2017-08-02 20:35:29 +00:00
last-call-no-bonus.ll [PM] Split LoopUnrollPass and make partial unroller a function pass 2017-08-02 20:35:29 +00:00
last-callsite.ll [NFC] fix trivial typos in comments and documents 2018-01-29 05:17:03 +00:00
launder.invariant.group.ll Set cost of invariant group intrinsics to 0 2018-09-07 22:29:48 +00:00
lifetime-no-datalayout.ll Add address space mangling to lifetime intrinsics 2017-04-10 20:18:21 +00:00
lifetime.ll Add address space mangling to lifetime intrinsics 2017-04-10 20:18:21 +00:00
local-as-metadata-undominated-use.ll Remove the obsolete offset parameter from @llvm.dbg.value 2017-07-28 20:21:02 +00:00
monster_scc.ll [PM] keeping history when original SCC split and then merge into itself 2018-10-23 23:29:45 +00:00
nested-inline.ll [PM] Provide an initial, minimal port of the inliner to the new pass manager. 2016-12-20 03:15:32 +00:00
noalias2.ll
noalias-calls.ll Remove alignment argument from memcpy/memmove/memset in favour of alignment attributes (Step 1) 2018-01-19 17:13:12 +00:00
noalias-cs.ll
noalias.ll
noinline-recursive-fn.ll [PM] Add one of the features left out of the initial inliner patch: 2016-12-27 06:46:20 +00:00
noinline.ll
nonnull.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
null-function.ll
optimization-remarks-hotness-threshold.ll Enrich inline messages 2018-08-05 14:53:08 +00:00
optimization-remarks-passed-yaml.ll Make YAML quote forward slashes. 2018-10-12 16:31:20 +00:00
optimization-remarks-with-hotness.ll Enrich inline messages 2018-08-05 14:53:08 +00:00
optimization-remarks-yaml.ll Make YAML quote forward slashes. 2018-10-12 16:31:20 +00:00
optimization-remarks.ll Enrich inline messages 2018-08-05 14:53:08 +00:00
parallel-loop-md.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
partial-inline-act.ll Renable test that was disabled due to cost analysis 2017-05-14 02:58:39 +00:00
pr21206.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
pr22285.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
pr26698.ll [InlineCost] Refactor the checks for different analyses to be a bit more 2017-08-14 21:25:00 +00:00
pr28298.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
pr33637.ll [Cloner] Re-map simplfied cloned instructions. 2017-07-01 03:29:33 +00:00
PR4909.ll
prof-update-instr.ll Fix update VP metadata after inlining for instrumentation PGO 2017-05-22 20:28:18 +00:00
prof-update-sample.ll Fix update VP metadata after inlining for instrumentation PGO 2017-05-22 20:28:18 +00:00
profile-meta.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
ptr-diff.ll Teach InlineCost about address spaces 2018-01-04 18:23:40 +00:00
recursive.ll [Inliner] Fix a nasty bug when inlining a non-recursive trace of 2017-08-19 06:56:11 +00:00
redundant-loads.ll [InlineCost] Skip volatile loads when looking for repeated loads 2017-12-19 13:42:58 +00:00
store-sroa.ll
switch.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
vector-bonus.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00
vector-no-bonus.ll [Inliner] Do not apply any bonus for cold callsites. 2017-07-28 21:47:36 +00:00
zero-cost.ll [PM] Turn on the new PM's inliner in addition to the current one for 2016-12-27 07:18:43 +00:00