1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00
llvm-mirror/test/Transforms/Inline
Serguei Katkov 0ce9cad66f [Inliner] Copy attributes when deoptimize intrinsic is inlined
During inlining of call-site with deoptimize intrinsic callee we miss
attributes set on this call site. As a result attributes like deopt-lowering are
disappeared resulting in inefficient behavior of register allocator in codegen.

Just copy attributes for deoptimize call like we do for others calls.

Reviewers: reames, apilipenko
Reviewed By: reames
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D102602
2021-05-18 10:08:37 +07:00
..
AArch64 [SVE][CodeGen] Fix InlineFunction for scalable vectors 2020-09-11 08:34:51 +01:00
AMDGPU [AMDGPU] Fix -amdgpu-inline-arg-alloca-cost 2021-03-12 10:19:50 -08:00
ARM
Inputs [InlineAdvisor] Allow replay of inline decisions for the CGSCC inliner from optimization remarks 2021-01-25 15:38:57 -08:00
ML [llvm][inliner] Reuse the inliner pass to implement 'always inliner' 2020-11-30 12:03:39 -08:00
PowerPC
WebAssembly
X86 [InlineCost] CallAnalyzer: use TTI info for extractvalue - they are free (PR50099) 2021-04-30 13:55:11 +03: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 [PruneEH] Pin tests to legacy PM 2020-10-29 18:17:55 -07:00
2004-10-17-InlineFunctionWithoutReturn.ll
2006-01-14-CallGraphUpdate.ll [PruneEH] Pin tests to legacy PM 2020-10-29 18:17:55 -07:00
2006-07-12-InlinePruneCGUpdate.ll [PruneEH] Pin tests to legacy PM 2020-10-29 18:17:55 -07:00
2006-11-09-InlineCGUpdate-2.ll [PruneEH] Pin tests to legacy PM 2020-10-29 18:17:55 -07:00
2006-11-09-InlineCGUpdate.ll [PruneEH] Pin tests to legacy PM 2020-10-29 18:17:55 -07:00
2007-04-15-InlineEH.ll
2007-06-25-WeakInline.ll
2007-12-19-InlineNoUnwind.ll
2008-09-02-NoInline.ll
2009-01-08-NoInlineDynamicAlloca.ll
2009-01-13-RecursiveInlineCrash.ll
2009-05-07-CallUsingSelfCrash.ll OpaquePtr: Bulk update tests to use typed sret 2020-11-20 17:58:26 -05:00
2010-05-12-ValueMap.ll
align.ll Reland [AssumeBundles] Use operand bundles to encode alignment assumptions 2020-09-12 15:36:06 +02:00
alloca_test.ll
alloca-bonus.ll
alloca-dbgdeclare-merge.ll [Inliner][NPM] Fix various tests under NPM 2020-10-12 10:41:40 -07:00
alloca-dbgdeclare.ll
alloca-in-scc.ll
alloca-merge-align.ll OpaquePtr: Bulk update tests to use typed byval 2020-11-20 14:00:46 -05:00
always-inline-attr.ll [AlwaysInliner] Call mergeAttributesForInlining after inlining 2020-11-13 12:01:35 -08:00
always-inline.ll [test][Inliner] Make always-inline.ll work with NPM 2020-08-27 10:00:54 -07:00
analysis-invalidation.ll [NewPM] Only invalidate modified functions' analyses in CGSCC passes 2021-05-03 17:21:44 -07:00
arg-attr-propagation.ll [ValueTracking] Use assume's noundef operand bundle 2020-10-14 20:16:33 +09:00
array_merge.ll [Inliner][NPM] Fix various tests under NPM 2020-10-12 10:41:40 -07:00
array-alloca.ll
attributes.ll
basictest.ll
bfi-update.ll
blockaddress.ll
byref-align.ll Reland [AssumeBundles] Use operand bundles to encode alignment assumptions 2020-09-12 15:36:06 +02:00
byval_lifetime.ll OpaquePtr: Bulk update tests to use typed byval 2020-11-20 14:00:46 -05:00
byval-align.ll
byval-tail-call.ll OpaquePtr: Bulk update tests to use typed byval 2020-11-20 14:00:46 -05:00
byval.ll OpaquePtr: Bulk update tests to use typed byval 2020-11-20 14:00:46 -05:00
callbr.ll
callgraph-update.ll
casts.ll
cfg_preserve_test.ll
cgscc-cycle-debug.ll [LazyCallGraph] Build SCCs of the reference graph in order 2020-11-02 13:22:42 -08:00
cgscc-cycle.ll [LazyCallGraph] Build SCCs of the reference graph in order 2020-11-02 13:22:42 -08:00
cgscc-incremental-invalidate.ll [NewPM] Hide pass manager debug logging behind -debug-pass-manager-verbose 2021-05-07 21:51:47 -07:00
cgscc-inline-replay.ll [InlineAdvisor] Allow replay of inline decisions for the CGSCC inliner from optimization remarks 2021-01-25 15:38:57 -08:00
cgscc-invalidate.ll [LazyCallGraph] Build SCCs of the reference graph in order 2020-11-02 13:22:42 -08:00
cgscc-update.ll [funcattrs] Add the maximal set of implied attributes to definitions 2021-04-16 14:22:19 -07:00
clear-analyses.ll [NewPM] Hide pass manager debug logging behind -debug-pass-manager-verbose 2021-05-07 21:51:47 -07:00
comdat-ipo.ll
crash2.ll [NPM] Share pass building options with legacy PM 2020-11-23 13:04:05 -08:00
crash-lifetime-marker.ll
crash.ll
dead-calls-willreturn.ll [test] Pin dead-calls-willreturn.ll to legacy PM 2021-01-23 12:35:36 -08:00
debug-info-duplicate-calls.ll
debug-invoke.ll
debuginline-cost-delta.ll
delete-call.ll [Inliner][NPM] Fix various tests under NPM 2020-10-12 10:41:40 -07:00
deopt-bundles.ll
deoptimize-intrinsic-attrs.ll [Inliner] Copy attributes when deoptimize intrinsic is inlined 2021-05-18 10:08:37 +07:00
deoptimize-intrinsic-cconv.ll
deoptimize-intrinsic.ll
devirtualize-2.ll [Inliner][NPM] Fix various tests under NPM 2020-10-12 10:41:40 -07:00
devirtualize-3.ll Reland [CGSCC] Detect devirtualization in more cases 2020-11-23 21:28:59 -08:00
devirtualize-4.ll
devirtualize-5.ll Reland [CGSCC] Detect devirtualization in more cases 2020-11-23 21:28:59 -08:00
devirtualize-6.ll Reland [CGSCC] Detect devirtualization in more cases 2020-11-23 21:28:59 -08:00
devirtualize.ll [Inline] prevent inlining on stack protector mismatch 2020-12-02 11:00:16 -08:00
dynamic_alloca_test.ll
dynamic-alloca-simplified-large.ll [IR] Make nosync, nofree and willreturn default for intrinsics. 2020-10-20 11:57:19 +02:00
ephemeral.ll Require asserts for test that uses debug flag 2021-04-23 15:23:47 -07:00
externally_available.ll [Inliner][NPM] Fix various tests under NPM 2020-10-12 10:41:40 -07:00
frameescape.ll
function-count-update-2.ll
function-count-update-3.ll
function-count-update.ll
gep_from_constant.ll
guard-intrinsic.ll
gvn-inline-iteration.ll [test] Fix gvn-inline-iteration.ll under NPM 2020-11-23 23:46:31 -08:00
ignore-debug-info.ll
inalloca-not-static.ll Reapply "OpaquePtr: Turn inalloca into a type attribute" 2021-03-29 08:55:30 -04:00
infinite-loop-two-predecessors.ll
inline_call.ll
inline_cleanup.ll
inline_constprop.ll
inline_dbg_declare.ll
inline_dce.ll
inline_inv_group.ll
inline_invoke.ll [IR] Make nosync, nofree and willreturn default for intrinsics. 2020-10-20 11:57:19 +02:00
inline_minisize.ll
inline_negative_result.ll
inline_nossp.ll [Inline] prevent inlining on stack protector mismatch 2020-12-02 11:00:16 -08:00
inline_prune.ll
inline_returns_twice.ll
inline_ssp.ll [Inline] prevent inlining on stack protector mismatch 2020-12-02 11:00:16 -08:00
inline_stats.ll Reland "[NPM][Inliner] Factor ImportedFunctionStats in the InlineAdvisor" 2021-01-20 13:33:43 -08:00
inline_unreachable-2.ll
inline_unreachable.ll
inline-assume.ll
inline-brunch-funnel.ll
inline-byval-bonus.ll [Inline] prevent inlining on stack protector mismatch 2020-12-02 11:00:16 -08:00
inline-cold-callee.ll [Inliner][NPM] Fix various tests under NPM 2020-10-12 10:41:40 -07:00
inline-cold-callsite-pgo.ll
inline-cold-callsite.ll
inline-cold.ll [Inliner][NPM] Fix various tests under NPM 2020-10-12 10:41:40 -07:00
inline-constexpr-addrspacecast-argument.ll
inline-cost-annotation-pass.ll
inline-fast-math-flags.ll
inline-funclets.ll
inline-hot-callee.ll [Inliner][NPM] Fix various tests under NPM 2020-10-12 10:41:40 -07:00
inline-hot-callsite-2.ll
inline-hot-callsite.ll [Inliner][NPM] Fix various tests under NPM 2020-10-12 10:41:40 -07:00
inline-incompat-attrs.ll
inline-indirect-chain.ll [EarlyCSE] Verify hash code in regression tests 2020-09-04 10:40:35 -04:00
inline-indirect.ll
inline-invoke-tail.ll
inline-invoke-with-asm-call.ll
inline-min-legal-vector-width.ll
inline-no-builtin-compatible.ll
inline-optnone.ll
inline-optsize.ll
inline-probe-stack.ll
inline-ptrtoint-different-sizes.ll [test] Update PR reference in testcase [NFC] 2020-11-23 15:12:50 +01:00
inline-remark.ll
inline-retainRV-call.ll [ObjC][ARC] Use operand bundle 'clang.arc.attachedcall' instead of 2021-03-04 11:22:30 -08:00
inline-scalable.ll
inline-semantic-interposition.ll
inline-skip-use-empty-alloca.ll
inline-stack-probe-size.ll
inline-tail.ll OpaquePtr: Bulk update tests to use typed byval 2020-11-20 14:00:46 -05:00
inline-threshold.ll
inline-varargs.ll OpaquePtr: Bulk update tests to use typed byval 2020-11-20 14:00:46 -05:00
inline-vla.ll
inlined-loop-metadata-inseltpoison.ll Precommit tests that have poison as shufflevector's placeholder 2020-12-29 17:09:31 +09:00
inlined-loop-metadata.ll
inlined-mustprogress-loop-metadata.ll [Inliner] Handle mustprogress functions 2020-11-06 20:03:46 -05:00
inlinedefault-threshold.ll
inlining-advisor-default.ll
internal-scc-members.ll
invariant-group-sroa.ll [Inliner] Propagate SROA analysis through invariant group intrinsics 2021-04-12 10:54:22 -07:00
invoke_test-1.ll
invoke_test-2.ll [SimplifyCFG] TryToSimplifyUncondBranchFromEmptyBlock() already knows how to preserve DomTree 2020-12-17 01:03:49 +03:00
invoke_test-3.ll
invoke-cleanup.ll
invoke-combine-clauses.ll
invoke-cost.ll
label-annotation.ll
last-call-bonus.ll
last-call-no-bonus.ll
last-callsite.ll
launder.invariant.group.ll [InlineFunction] Use llvm.experimental.noalias.scope.decl for noalias arguments. 2021-01-23 12:10:57 +01:00
lifetime-no-datalayout.ll
lifetime.ll
local-as-metadata-undominated-use.ll
module-inlining.ll
monster_scc.ll [Inliner][NPM] Fix various tests under NPM 2020-10-12 10:41:40 -07:00
nested-inline.ll
no-inline-line-tables.ll
no-unwind-inline-asm.ll Support unwinding from inline assembly 2021-05-13 19:13:03 +01:00
noalias2.ll [Inline] Don't add noalias metadata to inaccessiblememonly calls 2021-04-17 14:56:13 +02:00
noalias3.ll [InlineFunction] Only update noalias scopes once for an instruction. 2021-02-02 17:57:10 +01:00
noalias-calls2.ll [Inline] Don't add noalias metadata to inaccessiblememonly calls 2021-04-17 14:56:13 +02:00
noalias-calls-always.ll [InlineFunction] Use llvm.experimental.noalias.scope.decl for noalias arguments. 2021-01-23 12:10:57 +01:00
noalias-calls.ll [InlineFunction] Use llvm.experimental.noalias.scope.decl for noalias arguments. 2021-01-23 12:10:57 +01:00
noalias-cs.ll [InlineFunction] Use llvm.experimental.noalias.scope.decl for noalias arguments. 2021-01-23 12:10:57 +01:00
noalias.ll [InlineFunction] Use llvm.experimental.noalias.scope.decl for noalias arguments. 2021-01-23 12:10:57 +01:00
noinline-recursive-fn.ll
noinline.ll
nonnull.ll
null-function.ll [PM] Show the pass argument in pre/post-pass IR dumps 2021-02-25 14:02:00 -08:00
optimization-remarks-hotness-threshold.ll
optimization-remarks-passed-yaml.ll [Inliner] Change inline remark format and update ReplayInlineAdvisor to use it 2021-01-12 13:43:48 -08:00
optimization-remarks-with-hotness.ll [NewPM][Inliner] Move the 'always inliner' case in the same CGSCC pass as 'regular' inliner 2021-01-15 17:59:38 -08:00
optimization-remarks-yaml.ll
optimization-remarks.ll [NewPM][Inliner] Move the 'always inliner' case in the same CGSCC pass as 'regular' inliner 2021-01-15 17:59:38 -08:00
parallel-loop-md-callee.ll
parallel-loop-md-merge.ll
parallel-loop-md.ll
partial-inline-act.ll
partial-inline-incompat-attrs.ll
pr21206.ll
pr22285.ll [Inliner][NPM] Fix various tests under NPM 2020-10-12 10:41:40 -07:00
pr26698.ll
pr28298.ll
pr33637.ll
pr46945.ll [NewPM][Inliner] Move the 'always inliner' case in the same CGSCC pass as 'regular' inliner 2021-01-15 17:59:38 -08:00
pr48209.ll [Inline] Fix incorrect noalias metadata application (PR48209) 2020-11-18 20:52:58 +01:00
pr50270.ll [Inliner] Fix noalias metadata handling for instructions simplified during cloning (PR50270) 2021-05-10 21:59:59 +02:00
PR4909.ll
prof-update-instr.ll
prof-update-sample-alwaysinline.ll Make CallInst::updateProfWeight emit i32 weights instead of i64 2020-11-24 18:13:59 -08:00
prof-update-sample.ll Make CallInst::updateProfWeight emit i32 weights instead of i64 2020-11-24 18:13:59 -08:00
profile-meta.ll
ptr-diff.ll
recursive.ll
redundant-loads.ll
ret_attr_update.ll [ValueTracking] Don't assume readonly function will return 2021-01-24 10:40:21 +01:00
simplified_to.ll
store-sroa.ll
switch.ll
unwind-inline-asm.ll Support unwinding from inline assembly 2021-05-13 19:13:03 +01:00
vector-bonus.ll
vector-no-bonus.ll
zero-cost.ll