|
Revert of [runtime] Introduce dedicated JSBoundFunction to represent bound functions. (patchset #14 id:260001 of https://codereview.chromium.org/1542963002/ )
Reason for revert:
Breaks arm64 sim nosnap: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20nosnap%20-%20debug/builds/805/steps/Check/logs/function-bind
Original issue's description:
> [runtime] Introduce dedicated JSBoundFunction to represent bound functions.
>
> According to the ES2015 specification, bound functions are exotic
> objects, and thus don't need to be implemented as JSFunctions. So
> we introduce a new JSBoundFunction type to represent bound functions
> and make them optimizable. This already improves the performance of
> calling or constructing bound functions by 10-100x depending on the
> use case because we avoid the crazy dance between JavaScript and C++
> that was implemented in v8natives.js previously.
>
> There's still room for improvement in the performance of actually
> creating bound functions, which is also relevant in practice, but
> we already have a plan how to accomplish that later.
>
> The mips/mips64 ports were contributed by akos.palfi@imgtec.com.
>
> CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel
> BUG= chromium:535408, chromium:571299, v8:4629
> LOG=n
>
> Committed: https://crrev.com/ca8623eaa468cba65a5adafcdfb4615966f43ce2
> Cr-Commit-Position: refs/heads/master@{#33042}
TBR=cbruni@chromium.org,hpayer@chromium.org,yangguo@chromium.org,akos.palfi@imgtec.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= chromium:535408, chromium:571299, v8:4629
Committed: https://crrev.com/1cf8b105d680480846045e378af34cb39ed98fe6
Cr-Commit-Position: refs/heads/master@{#33043}
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+900 lines, -1683 lines) |
Patch |
|
M |
src/accessors.cc
|
View
|
|
1 chunk |
+6 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/api.cc
|
View
|
|
2 chunks |
+19 lines, -17 lines |
0 comments
|
Download
|
|
M |
src/api-natives.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/arm/builtins-arm.cc
|
View
|
|
4 chunks |
+0 lines, -137 lines |
0 comments
|
Download
|
|
M |
src/arm/code-stubs-arm.cc
|
View
|
|
1 chunk |
+10 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/arm/macro-assembler-arm.h
|
View
|
|
1 chunk |
+0 lines, -4 lines |
0 comments
|
Download
|
|
M |
src/arm/macro-assembler-arm.cc
|
View
|
|
1 chunk |
+0 lines, -13 lines |
0 comments
|
Download
|
|
M |
src/arm64/builtins-arm64.cc
|
View
|
|
4 chunks |
+0 lines, -142 lines |
0 comments
|
Download
|
|
M |
src/arm64/code-stubs-arm64.cc
|
View
|
|
1 chunk |
+11 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/arm64/macro-assembler-arm64.h
|
View
|
|
1 chunk |
+0 lines, -4 lines |
0 comments
|
Download
|
|
M |
src/arm64/macro-assembler-arm64.cc
|
View
|
|
1 chunk |
+0 lines, -13 lines |
0 comments
|
Download
|
|
M |
src/bailout-reason.h
|
View
|
|
1 chunk |
+0 lines, -3 lines |
0 comments
|
Download
|
|
M |
src/bootstrapper.cc
|
View
|
|
11 chunks |
+53 lines, -56 lines |
0 comments
|
Download
|
|
M |
src/builtins.h
|
View
|
|
4 chunks |
+0 lines, -7 lines |
0 comments
|
Download
|
|
M |
src/builtins.cc
|
View
|
|
1 chunk |
+1 line, -67 lines |
0 comments
|
Download
|
|
M |
src/compiler.cc
|
View
|
|
1 chunk |
+4 lines, -1 line |
0 comments
|
Download
|
|
M |
src/compiler/js-intrinsic-lowering.h
|
View
|
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
|
M |
src/compiler/js-intrinsic-lowering.cc
|
View
|
|
2 chunks |
+1 line, -43 lines |
0 comments
|
Download
|
|
M |
src/crankshaft/hydrogen.cc
|
View
|
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/factory.h
|
View
|
|
1 chunk |
+0 lines, -5 lines |
0 comments
|
Download
|
|
M |
src/factory.cc
|
View
|
|
3 chunks |
+3 lines, -56 lines |
0 comments
|
Download
|
|
M |
src/full-codegen/arm/full-codegen-arm.cc
|
View
|
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/full-codegen/arm64/full-codegen-arm64.cc
|
View
|
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/full-codegen/ia32/full-codegen-ia32.cc
|
View
|
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/full-codegen/mips/full-codegen-mips.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/full-codegen/mips64/full-codegen-mips64.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/full-codegen/x64/full-codegen-x64.cc
|
View
|
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/heap/heap.h
|
View
|
|
2 chunks |
+0 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/heap/objects-visiting.cc
|
View
|
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
|
M |
src/ia32/builtins-ia32.cc
|
View
|
|
4 chunks |
+0 lines, -150 lines |
0 comments
|
Download
|
|
M |
src/ia32/code-stubs-ia32.cc
|
View
|
|
1 chunk |
+8 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/ia32/macro-assembler-ia32.h
|
View
|
|
1 chunk |
+0 lines, -4 lines |
0 comments
|
Download
|
|
M |
src/ia32/macro-assembler-ia32.cc
|
View
|
|
1 chunk |
+0 lines, -12 lines |
0 comments
|
Download
|
|
M |
src/js/v8natives.js
|
View
|
|
1 chunk |
+70 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/json-stringifier.h
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
src/mips/builtins-mips.cc
|
View
|
|
4 chunks |
+0 lines, -198 lines |
0 comments
|
Download
|
|
M |
src/mips/code-stubs-mips.cc
|
View
|
|
1 chunk |
+9 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/mips/macro-assembler-mips.h
|
View
|
|
1 chunk |
+0 lines, -4 lines |
0 comments
|
Download
|
|
M |
src/mips/macro-assembler-mips.cc
|
View
|
|
1 chunk |
+0 lines, -11 lines |
0 comments
|
Download
|
|
M |
src/mips64/builtins-mips64.cc
|
View
|
|
4 chunks |
+0 lines, -198 lines |
0 comments
|
Download
|
|
M |
src/mips64/code-stubs-mips64.cc
|
View
|
|
1 chunk |
+9 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/mips64/macro-assembler-mips64.h
|
View
|
|
1 chunk |
+0 lines, -4 lines |
0 comments
|
Download
|
|
M |
src/mips64/macro-assembler-mips64.cc
|
View
|
|
1 chunk |
+0 lines, -11 lines |
0 comments
|
Download
|
|
M |
src/objects.h
|
View
|
|
19 chunks |
+67 lines, -71 lines |
0 comments
|
Download
|
|
M |
src/objects.cc
|
View
|
|
10 chunks |
+55 lines, -62 lines |
0 comments
|
Download
|
|
M |
src/objects-body-descriptors-inl.h
|
View
|
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
|
M |
src/objects-debug.cc
|
View
|
|
2 chunks |
+0 lines, -18 lines |
0 comments
|
Download
|
|
M |
src/objects-inl.h
|
View
|
|
10 chunks |
+107 lines, -22 lines |
0 comments
|
Download
|
|
M |
src/objects-printer.cc
|
View
|
|
3 chunks |
+5 lines, -13 lines |
0 comments
|
Download
|
|
M |
src/profiler/heap-snapshot-generator.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
src/profiler/heap-snapshot-generator.cc
|
View
|
|
4 chunks |
+29 lines, -23 lines |
0 comments
|
Download
|
|
M |
src/runtime/runtime.h
|
View
|
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/runtime/runtime-debug.cc
|
View
|
|
3 chunks |
+39 lines, -46 lines |
0 comments
|
Download
|
|
M |
src/runtime/runtime-function.cc
|
View
|
|
5 chunks |
+147 lines, -18 lines |
0 comments
|
Download
|
|
M |
src/runtime/runtime-object.cc
|
View
|
|
1 chunk |
+8 lines, -6 lines |
0 comments
|
Download
|
|
M |
src/runtime/runtime-observe.cc
|
View
|
|
2 chunks |
+3 lines, -10 lines |
0 comments
|
Download
|
|
M |
src/snapshot/serialize.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/types.cc
|
View
|
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
|
M |
src/x64/builtins-x64.cc
|
View
|
|
4 chunks |
+0 lines, -149 lines |
0 comments
|
Download
|
|
M |
src/x64/code-stubs-x64.cc
|
View
|
|
1 chunk |
+9 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/x64/macro-assembler-x64.h
|
View
|
|
1 chunk |
+0 lines, -4 lines |
0 comments
|
Download
|
|
M |
src/x64/macro-assembler-x64.cc
|
View
|
|
1 chunk |
+0 lines, -12 lines |
0 comments
|
Download
|
|
M |
test/cctest/test-api.cc
|
View
|
|
1 chunk |
+0 lines, -33 lines |
0 comments
|
Download
|
|
M |
test/cctest/test-heap-profiler.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
test/mjsunit/function-bind.js
|
View
|
|
2 chunks |
+0 lines, -6 lines |
0 comments
|
Download
|
|
A |
test/mjsunit/regress/regress-1229.js
|
View
|
|
1 chunk |
+146 lines, -0 lines |
0 comments
|
Download
|
|
A |
test/mjsunit/regress/regress-351315.js
|
View
|
|
1 chunk |
+49 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/test262/test262.status
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/unittests/compiler/js-intrinsic-lowering-unittest.cc
|
View
|
|
2 chunks |
+7 lines, -8 lines |
0 comments
|
Download
|
Total messages: 5 (1 generated)
|