v8/test/mjsunit/compiler
mstarzinger@chromium.org 05e95eee0e Allow full inlining of f.apply(this, arguments) calls.
This allows Crankshaft to completely inline a f.apply() dispatch if the
exact number of arguments is known and the function is constant. The
deoptimizer doesn't generate the f.apply() frame during deoptimization,
so the materialized frames look like f.apply() did a tailcall.

R=jkummerow@chromium.org
TEST=mjsunit/compiler/inline-function-apply

Review URL: https://codereview.chromium.org/12263004

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13665 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-02-14 09:55:50 +00:00
..
alloc-number.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
alloc-object-huge.js Allow multiple lines of custom flags in javascript tests. 2012-08-10 12:26:33 +00:00
alloc-object.js Implement inlined object allocation in Crankshaft. 2012-03-01 11:10:28 +00:00
array-access.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
array-length.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
assignment-deopt.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
assignment.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
binary-ops.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
call-keyed.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
compare.js Fix evaluation order of GT and LTE operators. 2011-10-17 07:43:40 +00:00
complex-for-in.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
control-flow-0.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
control-flow-1.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
control-flow-2.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
count-deopt.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
countoperation.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
delete.js Remove variable rewrites and the unneccesary Slot class. 2011-09-07 11:02:31 +00:00
deopt-args.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
deopt-inlined-smi.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
eval-introduced-closure.js Allow closures to be optimized if outer contexts that call eval are all in strict mode. 2011-05-11 11:26:11 +00:00
expression-trees.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
for-stmt.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
function-call.js Support for function calls on an arbitrary expression that returns 2009-11-02 12:04:35 +00:00
global-accessors.js Added check for trailing whitespaces and corrected existing violations. 2011-09-01 11:28:10 +00:00
globals.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
inline-accessors.js Deoptimization support for accessors. 2012-08-17 10:43:32 +00:00
inline-arguments.js Fix arguments object materialization during deopt. 2012-09-12 12:28:42 +00:00
inline-arity-mismatch.js Support inlining at call-sites with mismatched number of arguments. 2012-01-24 08:43:12 +00:00
inline-closures.js Allow inlining of multiple closures from shared function. 2013-01-25 16:55:00 +00:00
inline-compare.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
inline-conditional.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
inline-construct.js Extend constructor inlining test case. 2012-08-16 09:13:25 +00:00
inline-context-slots.js Enable inlining of functions that reference context slots. 2011-09-15 10:57:47 +00:00
inline-function-apply.js Allow full inlining of f.apply(this, arguments) calls. 2013-02-14 09:55:50 +00:00
inline-global-access.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
inline-literals.js Allow inlining of functions containing array literals. 2012-06-27 14:46:01 +00:00
inline-param.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
inline-throw.js Enable inlining functions containing throw. 2011-04-13 13:09:58 +00:00
inline-two.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
jsnatives.js Added fast compiler support for calling JS runtime functions. 2009-11-27 00:28:06 +00:00
lazy-const-lookup.js Reapply r9870 "Remove some initialization checks based on source positions.". 2011-11-08 13:28:53 +00:00
literals-assignment.js Support for object literals in fast compiler. 2009-10-26 13:21:48 +00:00
literals-optimized.js Implement fast literal support in Crankshaft. 2012-02-16 17:32:30 +00:00
literals.js Fix illegal escape-sequences to throw syntax errors. 2012-04-16 15:54:02 +00:00
logical-and.js Cleanup of mjsunit.js code and make assertEquals more strict. 2011-04-15 11:35:36 +00:00
logical-or.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
loopcount.js Fix code generation for fast smi loops to support parameters as well. 2010-03-22 11:55:12 +00:00
loops.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
math-floor-global.js Inline builtin Math functions functions in more cases. 2012-02-08 12:08:46 +00:00
math-floor-local.js Inline builtin Math functions functions in more cases. 2012-02-08 12:08:46 +00:00
multiply-add.js Emit VMLA for multiply-add on ARM 2012-11-14 11:01:18 +00:00
null-compare.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
objectliterals.js Fix bug in the fast compiler's object literal code 2009-11-26 21:13:20 +00:00
optimize-bitnot.js Optimize ~~(expr) in optimized code. 2012-04-19 13:24:15 +00:00
optimized-closures.js Share optimized code for closures. 2012-06-14 14:06:22 +00:00
optimized-for-in.js When compiling for-in pass correct context value to the increment instruction. 2012-02-27 14:37:27 +00:00
optimized-function-calls.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
parallel-proto-change.js Make HCheckPrototypeMaps compatible with parallel recompilation. 2013-01-21 15:49:00 +00:00
pic.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
property-calls.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
property-refs.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
property-simple.js Support for property access (named, keyed) in the fast compiler. 2009-10-27 16:11:12 +00:00
property-static.js Allow monomorphic loads when static type is known. 2013-01-24 17:54:30 +00:00
property-stores.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
proto-chain-constant.js Allow loading constant function from proto chain. 2013-01-22 12:03:35 +00:00
proto-chain-load.js Improve handling of property loads on the proto chain. 2012-11-05 08:53:54 +00:00
recursive-deopt.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
regress-0.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-1.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-2.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-3.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-4.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-5.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-6.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-7.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-8.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-1085.js Replace loops by OptimizeFunctionOnNextCall in regress-1085 and regress-1210. 2011-05-06 09:10:28 +00:00
regress-1394.js Fix bug in optimized compiler's switch-statement. 2011-05-18 11:06:07 +00:00
regress-96989.js Fix a bug with uninitialized const variables in the optimizing compiler. 2011-09-20 10:26:01 +00:00
regress-106351.js Fix a bug with register use in optimized Math.round. 2011-12-07 10:13:46 +00:00
regress-3136962.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-3185901.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-3218915.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
regress-3249650.js Speed up a regression test regress-3249650.js so it does not timeout. 2011-01-07 13:52:36 +00:00
regress-3260426.js Be more careful about exiting inlined functions in a test context. 2010-12-07 12:07:40 +00:00
regress-arguments.js Make optimized Function.prototype.apply safe for non-JSObject first arguments. 2011-02-09 16:43:23 +00:00
regress-arrayliteral.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-closures-with-eval.js Replace long running loops by OptimizeFunctionOnNextCall in some tests that are often timing out on ARM. 2011-05-03 13:53:08 +00:00
regress-const.js Fix timeout and a small bug in a regression test. 2011-05-30 12:48:35 +00:00
regress-deopt-call-as-function.js Speedup unit test to avoid timeout on slow ARM simulator. 2011-11-14 12:33:44 +00:00
regress-funarguments.js Support inlining at call-sites with mismatched number of arguments. 2012-01-24 08:43:12 +00:00
regress-funcaller.js Fix lazy deoptimization at HInvokeFunction and enable target-recording call-function stub. 2011-11-16 08:44:30 +00:00
regress-gap.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-gvn.js Speed up test/mjsunit/compiler/regress-gvn 2012-09-24 10:07:09 +00:00
regress-inline-callfunctionstub.js Fix bug in inlining call-as-function when inlining multiple levels deep. 2011-10-26 10:31:06 +00:00
regress-intoverflow.js Replace long running loops by OptimizeFunctionOnNextCall in some tests that are often timing out on ARM. 2011-05-03 13:53:08 +00:00
regress-lazy-deopt.js Fix lazy deoptimization at HInvokeFunction and enable target-recording call-function stub. 2011-11-16 08:44:30 +00:00
regress-lbranch-double.js Fixed code generation for LBranch on ARM when the operand's representation is double. 2011-08-02 15:14:12 +00:00
regress-loadfield.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
regress-loop-deopt.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-max-locals-for-osr.js Correct the limit of local variables in a optimized functions. 2011-06-09 14:52:58 +00:00
regress-max.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
regress-or.js Speed up test/mjsunit/compiler/regress-or 2012-09-24 10:08:01 +00:00
regress-rep-change.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-serialized-slots.js Properly create variables to access outer arguments and function names. 2011-01-19 08:16:17 +00:00
regress-stacktrace-methods.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
regress-stacktrace.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
regress-toint32.js Fix a register assignment bug in typed array stores without SSE3 available. 2012-03-01 12:45:46 +00:00
regress-valueof.js Fix bug with input representation of HValueOf. 2011-02-22 12:14:53 +00:00
rotate.js Add rotate-right instruction to hydrogen and use it instead of bitwise operations 2012-11-05 13:28:10 +00:00
safepoint.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
short-circuit.js Introduce 'top-of-stack caching' to the toplevel code generator by 2010-01-18 14:04:55 +00:00
simple-bailouts.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
simple-binary-op.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
simple-deopt.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
simple-global-access.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
simple-inlining.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
simple-osr.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
strict-recompile.js Replace boolean indications of strict mode by an enum value. 2011-10-24 07:47:22 +00:00
switch-bailout.js Introduce runtime function %OptimizeFunctionOnNextCall to manually trigger optimization. 2011-04-11 13:24:50 +00:00
this-property-refs.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
thisfunction.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00
uint32.js Fix DoDeferredNumberTagU to keep the value in xmm1 instead of xmm0 on x64. 2012-08-23 16:14:01 +00:00
unary-add.js Implement unary addition in the full (non-optimizing) code generator. 2010-01-26 13:57:11 +00:00
variables.js Update V8 to version 3.0 (re-land r5920). 2010-12-07 11:31:57 +00:00