v8/test/cctest/compiler
mvstanton bb31db3ad6 Type Feedback Vector lives in the closure
(RELAND: the problem before was a missing write barrier for adding the code
entry to the new closure. It's been addressed with a new macro instruction
and test. The only change to this CL is the addition of two calls to
__ RecordWriteCodeEntryField() in the platform CompileLazy builtin.)

We get less "pollution" of type feedback if we have one vector per native
context, rather than one for the whole system. This CL moves the vector
appropriately.

We rely more heavily on the Optimized Code Map in the SharedFunctionInfo. The
vector actually lives in the first slot of the literals array (indeed there is
great commonality between those arrays, they can be thought of as the same
thing). So we make greater effort to ensure there is a valid literals array
after compilation.

This meant, for performance reasons, that we needed to extend
FastNewClosureStub to support creating closures with literals. And ultimately,
it drove us to move the optimized code map lookup out of FastNewClosureStub
and into the compile lazy builtin.

The heap change is trivial so I TBR Hannes for it...
Also, Yang has had a look at the debugger changes already and approved 'em. So he is TBR style too.
And Benedikt reviewed it as well.

TBR=hpayer@chromium.org, yangguo@chromium.org, bmeurer@chromium.org

BUG=

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

Cr-Commit-Position: refs/heads/master@{#33741}
2016-02-04 15:41:23 +00:00
..
c-signature.h [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
call-tester.h Implement the BufferedRawMachineAssemblerTester. 2015-10-30 21:32:49 +00:00
codegen-tester.cc [turbofan] Store nodes use only MachineRepresentation, not MachineType. 2015-12-11 15:34:16 +00:00
codegen-tester.h [wasm] Provide backoff implementations for the Fxx rounding instructions 2016-02-02 12:26:58 +00:00
function-tester.h Type Feedback Vector lives in the closure 2016-02-04 15:41:23 +00:00
graph-builder-tester.h [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
test-basic-block-profiler.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
test-branch-combine.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
test-changes-lowering.cc [turbofan] Store nodes use only MachineRepresentation, not MachineType. 2015-12-11 15:34:16 +00:00
test-code-stub-assembler.cc [compiler] Extend the functionality of CodeStubAssembler 2016-02-02 09:42:54 +00:00
test-gap-resolver.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
test-graph-visualizer.cc [tubofan] Remove .dot output of --trace-turbo 2015-12-11 16:58:31 +00:00
test-instruction.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-js-constant-cache.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-js-context-specialization.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-js-typed-lowering.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-jump-threading.cc Preparing the terrain for frame elision. This change is necessary to 2016-01-28 16:15:12 +00:00
test-linkage.cc [compiler] Remove CodeStub from CompilationInfo 2016-01-20 15:18:14 +00:00
test-loop-analysis.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
test-loop-assignment-analysis.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-machine-operator-reducer.cc [turbofan] Store nodes use only MachineRepresentation, not MachineType. 2015-12-11 15:34:16 +00:00
test-multiple-return.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
test-node.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-operator.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-osr.cc [turbofan] Make MachineType a pair of enums. 2015-12-10 09:03:53 +00:00
test-pipeline.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-representation-change.cc [turbofan] Replace MachineSemantic with Type in simplified lowering. 2016-01-12 05:55:08 +00:00
test-run-bytecode-graph-builder.cc [interpreter, debugger] implement debugger statement. 2016-02-04 15:07:06 +00:00
test-run-deopt.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-run-inlining.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-run-intrinsics.cc [runtime] Remove two obsolete intrinsics. 2015-12-16 08:26:36 +00:00
test-run-jsbranches.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-run-jscalls.cc Type Feedback Vector lives in the closure 2016-02-04 15:41:23 +00:00
test-run-jsexceptions.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-run-jsobjects.cc Basic TurboFan support for rest arguments. 2015-12-31 11:56:39 +00:00
test-run-jsops.cc Ship ES2015 sloppy-mode const semantics 2016-01-11 23:09:59 +00:00
test-run-machops.cc [wasm] Provide backoff implementations for the Fxx rounding instructions 2016-02-02 12:26:58 +00:00
test-run-native-calls.cc X87: Change num_double_registers() to num_allocatable_double_registers() for TestStackSlot. 2016-02-01 10:54:33 +00:00
test-run-properties.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-run-stackcheck.cc Disable soon to be deprecated APIs per default for v8 2015-12-09 10:35:04 +00:00
test-run-stubs.cc [compiler] Remove CodeStub from CompilationInfo 2016-01-20 15:18:14 +00:00
test-run-variables.cc Ship ES2015 sloppy-mode const semantics 2016-01-11 23:09:59 +00:00
test-simplified-lowering.cc [turbofan] Avoid using the typer's types in representation inference for phis. 2016-01-13 15:35:36 +00:00
value-helper.h Revert of [turbofan] Implement rounding of floats on x64 and ia32 without sse4.1. (patchset #2 id:20001 of https://codereview.chromium.org/1584663007/ ) 2016-01-18 16:28:00 +00:00