|
[stubs] A new approach to TF stubs
* Add a sibling interface to InterpreterAssembler called
CodeStubAssembler which provides a wrapper around the
RawMachineAssembler and is intented to make it easy to build
efficient cross-platform code stubs. Much of the implementation
of CodeStubAssembler is shamelessly stolen from the
InterpreterAssembler, and the idea is to eventually merge the
two interfaces somehow, probably moving the
InterpreterAssembler interface over to use the
CodeStubAssembler. Short-term, however, the two interfaces
shall remain decoupled to increase our velocity developing the
two systems in parallel.
* Implement the StringLength stub in TurboFan with the new
CodeStubAssembler. Replace and remove the old Hydrogen-stub
version.
* Remove a whole slew of machinery to support JavaScript-style
code stub generation, since it ultimately proved unwieldy,
brittle and baroque. This cleanup includes removing the shared
code stub context, several example stubs and a tangle of build
file changes.
BUG= v8:4587
LOG=n
Committed: https://crrev.com/3e7e3ed726dd016dc6ae89803999a28fba2362c7
Cr-Commit-Position: refs/heads/master@{#32508}
Total comments: 26
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+641 lines, -902 lines) |
Patch |
|
M |
BUILD.gn
|
View
|
1
2
3
4
5
6
7
8
9
|
9 chunks |
+2 lines, -41 lines |
0 comments
|
Download
|
|
M |
src/DEPS
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
src/arm/interface-descriptors-arm.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
1 chunk |
+0 lines, -21 lines |
0 comments
|
Download
|
|
M |
src/arm64/interface-descriptors-arm64.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
1 chunk |
+0 lines, -21 lines |
0 comments
|
Download
|
|
M |
src/bootstrapper.h
|
View
|
|
2 chunks |
+0 lines, -4 lines |
0 comments
|
Download
|
|
M |
src/bootstrapper.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
5 chunks |
+0 lines, -46 lines |
0 comments
|
Download
|
|
M |
src/code-stubs.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
8 chunks |
+11 lines, -98 lines |
0 comments
|
Download
|
|
M |
src/code-stubs.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
3 chunks |
+18 lines, -35 lines |
0 comments
|
Download
|
|
M |
src/code-stubs-hydrogen.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+0 lines, -14 lines |
0 comments
|
Download
|
|
M |
src/compiler/change-lowering.cc
|
View
|
1
2
3
4
5
6
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
|
A |
src/compiler/code-stub-assembler.h
|
View
|
1
2
3
4
5
6
7
8
9
10
|
1 chunk |
+103 lines, -0 lines |
0 comments
|
Download
|
|
A |
src/compiler/code-stub-assembler.cc
|
View
|
1
2
3
4
5
6
|
1 chunk |
+196 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/compiler/interpreter-assembler.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/compiler/js-generic-lowering.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
2 chunks |
+4 lines, -3 lines |
0 comments
|
Download
|
|
M |
src/compiler/js-intrinsic-lowering.h
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+0 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/compiler/js-intrinsic-lowering.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
2 chunks |
+0 lines, -41 lines |
0 comments
|
Download
|
|
M |
src/compiler/linkage.h
|
View
|
1
2
3
4
5
6
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/compiler/linkage.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
3 chunks |
+5 lines, -6 lines |
0 comments
|
Download
|
|
M |
src/compiler/pipeline.h
|
View
|
1
2
3
4
5
6
7
8
9
10
|
1 chunk |
+7 lines, -5 lines |
0 comments
|
Download
|
|
M |
src/compiler/pipeline.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
1 chunk |
+7 lines, -4 lines |
0 comments
|
Download
|
|
M |
src/compiler/raw-machine-assembler.h
|
View
|
1
2
3
4
5
6
7
8
9
|
2 chunks |
+10 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/compiler/raw-machine-assembler.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
|
4 chunks |
+69 lines, -23 lines |
0 comments
|
Download
|
|
M |
src/heap/heap.h
|
View
|
1
2
3
|
3 chunks |
+0 lines, -11 lines |
0 comments
|
Download
|
|
M |
src/heap/heap.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
2 chunks |
+1 line, -3 lines |
0 comments
|
Download
|
|
M |
src/ia32/interface-descriptors-ia32.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
1 chunk |
+0 lines, -21 lines |
0 comments
|
Download
|
|
M |
src/interface-descriptors.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
4 chunks |
+9 lines, -19 lines |
0 comments
|
Download
|
|
M |
src/interface-descriptors.cc
|
View
|
1
|
3 chunks |
+7 lines, -27 lines |
0 comments
|
Download
|
|
M |
src/isolate.cc
|
View
|
1
2
3
4
5
6
7
8
|
1 chunk |
+0 lines, -6 lines |
0 comments
|
Download
|
|
M |
src/js/code-stubs.js
|
View
|
1
2
3
4
5
6
|
1 chunk |
+0 lines, -69 lines |
0 comments
|
Download
|
|
M |
src/mips/interface-descriptors-mips.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
1 chunk |
+0 lines, -21 lines |
0 comments
|
Download
|
|
M |
src/mips64/interface-descriptors-mips64.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
1 chunk |
+0 lines, -21 lines |
0 comments
|
Download
|
|
M |
src/runtime/runtime.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
1 chunk |
+0 lines, -3 lines |
0 comments
|
Download
|
|
M |
src/runtime/runtime-internal.cc
|
View
|
1
2
3
4
5
6
7
8
|
1 chunk |
+0 lines, -24 lines |
0 comments
|
Download
|
|
M |
src/runtime/runtime-test.cc
|
View
|
|
1 chunk |
+1 line, -2 lines |
0 comments
|
Download
|
|
M |
src/snapshot/natives.h
|
View
|
|
2 chunks |
+0 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/snapshot/natives-common.cc
|
View
|
|
2 chunks |
+0 lines, -7 lines |
0 comments
|
Download
|
|
M |
src/snapshot/natives-external.cc
|
View
|
|
3 chunks |
+0 lines, -3 lines |
0 comments
|
Download
|
|
M |
src/snapshot/serialize.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
1 chunk |
+1 line, -4 lines |
0 comments
|
Download
|
|
M |
src/snapshot/serialize.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
5 chunks |
+2 lines, -18 lines |
0 comments
|
Download
|
|
M |
src/x64/interface-descriptors-x64.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
1 chunk |
+0 lines, -21 lines |
0 comments
|
Download
|
|
M |
test/cctest/cctest.gyp
|
View
|
1
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
test/cctest/compiler/function-tester.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
3 chunks |
+37 lines, -6 lines |
0 comments
|
Download
|
|
A |
test/cctest/compiler/test-code-stub-assembler.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
|
1 chunk |
+125 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/cctest/compiler/test-run-stubs.cc
|
View
|
1
2
3
4
5
6
7
8
|
3 chunks |
+3 lines, -81 lines |
0 comments
|
Download
|
|
M |
test/cctest/compiler/test-simplified-lowering.cc
|
View
|
1
2
3
4
5
6
7
8
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
test/cctest/test-api.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
|
1 chunk |
+1 line, -2 lines |
0 comments
|
Download
|
|
M |
test/cctest/test-heap.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
3 chunks |
+3 lines, -8 lines |
0 comments
|
Download
|
|
M |
test/cctest/test-heap-profiler.cc
|
View
|
1
2
3
4
5
6
7
8
9
|
4 chunks |
+6 lines, -11 lines |
0 comments
|
Download
|
|
M |
test/cctest/test-object-observe.cc
|
View
|
|
3 chunks |
+3 lines, -3 lines |
0 comments
|
Download
|
|
D |
test/mjsunit/compiler/stubs/floor-stub.js
|
View
|
|
1 chunk |
+0 lines, -61 lines |
0 comments
|
Download
|
|
D |
test/mjsunit/get-caller-js-function.js
|
View
|
1
2
3
4
5
|
1 chunk |
+0 lines, -21 lines |
0 comments
|
Download
|
|
D |
test/mjsunit/get-caller-js-function-throws.js
|
View
|
1
2
3
4
5
|
1 chunk |
+0 lines, -14 lines |
0 comments
|
Download
|
|
M |
tools/gyp/v8.gyp
|
View
|
1
2
3
4
5
6
7
8
9
|
6 chunks |
+2 lines, -41 lines |
0 comments
|
Download
|
Total messages: 28 (16 generated)
|