llvm-6502/test/Transforms/Inline
Eric Christopher 320404f134 Implement TargetTransformInfo::hasCompatibleFunctionAttributes for X86.
This checks subtarget feature compatibility for inlining by verifying
that the callee is a strict subset of the caller's features. This includes
the cpu as part of the subtarget we can get via the incoming functions as
the backend takes CPUs as feature sets.

This allows us to inline things like:

int foo() { return baz(); }

int __attribute__((target("sse4.2"))) bar() {
  return foo();
}

so that generic code can be inlined into specialized functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@241221 91177308-0d34-0410-b5e6-96231b3b80d8
2015-07-02 01:11:50 +00:00
..
2003-09-14-InlineValue.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
2003-09-22-PHINodeInlineFail.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
2003-09-22-PHINodesInExceptionDest.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
2003-09-22-PHINodesInNormalInvokeDest.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
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 [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
2006-11-09-InlineCGUpdate-2.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
2006-11-09-InlineCGUpdate.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
2007-04-15-InlineEH.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
2007-06-25-WeakInline.ll
2007-12-19-InlineNoUnwind.ll
2008-09-02-NoInline.ll
2009-01-08-NoInlineDynamicAlloca.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
2009-01-13-RecursiveInlineCrash.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
2009-05-07-CallUsingSelfCrash.ll
2010-05-12-ValueMap.ll
align.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
alloca_test.ll
alloca-bonus.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
alloca-dbgdeclare.ll IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
alloca-in-scc.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
alloca-merge-align.ll Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
always-inline.ll Check the alwaysinline attribute on the call as well as on the caller. 2014-05-19 18:25:54 +00:00
array_merge.ll
attributes.ll [inliner] Don't inline a function if it doesn't have exactly the same 2015-04-13 18:43:38 +00:00
basictest.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
blockaddress.ll Suppress inlining when the block address is taken 2014-07-01 00:19:34 +00:00
byval_lifetime.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
byval-tail-call.ll Reapply 239795 - [InstCombine] Propagate non-null facts to call parameters 2015-06-16 20:24:25 +00:00
byval.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
callgraph-update.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
casts.ll
cfg_preserve_test.ll
crash2.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
crash-lifetime-marker.ll [InlineFunction] Don't add lifetime markers for zero-sized allocas. 2015-04-20 16:11:05 +00:00
crash.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
debug-info-duplicate-calls.ll IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
debug-invoke.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
delete-call.ll
devirtualize-2.ll [opaque pointer type] Add textual IR support for explicit type parameter to the call instruction 2015-04-16 23:24:18 +00:00
devirtualize-3.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
devirtualize.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
dynamic_alloca_test.ll
ephemeral.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
externally_available.ll
frameescape.ll [opaque pointer type] Add textual IR support for explicit type parameter to the call instruction 2015-04-16 23:24:18 +00:00
gvn-inline-iteration.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
ignore-debug-info.ll IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
inline_cleanup.ll
inline_constprop.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
inline_dbg_declare.ll IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
inline_dce.ll
inline_invoke.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
inline_minisize.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
inline_prune.ll
inline_returns_twice.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
inline_ssp.ll [opaque pointer type] Add textual IR support for explicit type parameter to the call instruction 2015-04-16 23:24:18 +00:00
inline-byval-bonus.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
inline-cold.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
inline-fast-math-flags.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
inline-fp.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
inline-indirect.ll Fix a crash in the assumption cache when inlining indirect function calls 2015-02-12 21:04:22 +00:00
inline-invoke-tail.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
inline-invoke-with-asm-call.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
inline-musttail-varargs.ll [opaque pointer type] Add textual IR support for explicit type parameter to the call instruction 2015-04-16 23:24:18 +00:00
inline-optnone.ll
inline-optsize.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
inline-tail.ll Revert "Transforms: reapply SVN r219899" 2014-11-04 02:02:14 +00:00
inline-target-attr.ll Implement TargetTransformInfo::hasCompatibleFunctionAttributes for X86. 2015-07-02 01:11:50 +00:00
inline-vla.ll [opaque pointer type] Add textual IR support for explicit type parameter to gep operator 2015-03-13 18:20:45 +00:00
invoke_test-1.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
invoke_test-2.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
invoke_test-3.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
invoke-cleanup.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
invoke-combine-clauses.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
invoke-cost.ll Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
lifetime-no-datalayout.ll Make DataLayout Non-Optional in the Module 2015-03-04 18:43:29 +00:00
lifetime.ll
nested-inline.ll
noalias2.ll Changed renaming of local symbols by inserting a dot vefore the numeric suffix. 2015-05-12 16:47:30 +00:00
noalias-calls.ll IR: Add 'distinct' MDNodes to bitcode and assembly 2015-01-08 22:38:29 +00:00
noalias-cs.ll Changed renaming of local symbols by inserting a dot vefore the numeric suffix. 2015-05-12 16:47:30 +00:00
noalias.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
noinline-recursive-fn.ll
noinline.ll
nonnull.ll Teach InlineCost to account for a null check which can be folded away 2015-06-26 20:51:17 +00:00
null-function.ll Add new lines to debugging information. 2014-07-03 02:11:49 +00:00
optimization-remarks.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
pr21206.ll Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
pr22285.ll [Inliner] Discard empty COMDAT groups 2015-05-05 20:14:22 +00:00
PR4909.ll
ptr-diff.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
recursive.ll
store-sroa.ll Correctly estimate SROA savings for store operands in inline cost analysis. 2015-03-20 18:33:12 +00:00
switch.ll
vector-bonus.ll [inliner] Fix the early-exit of the inline cost analysis to correctly 2015-05-27 02:49:05 +00:00