Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(878)

Issue 2607993003: FFI Compiler based on code stub assembler (Closed)

Created:
3 years, 11 months ago by mattloring
Modified:
3 years, 11 months ago
CC:
v8-reviews_googlegroups.com
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

FFI Compiler outline based on code stub assembler. We are looking to land this frame to allow specific type translation implementations to proceed in parallel. BUG=v8:4456 Review-Url: https://codereview.chromium.org/2607993003 Cr-Commit-Position: refs/heads/master@{#42475} Committed: https://chromium.googlesource.com/v8/v8/+/0ecc6b060045d617ac31d94816054d2a3cca7855

Patch Set 1 #

Patch Set 2 : Remove duplicated entry in cctest.gyp #

Patch Set 3 : Add variable argument C call to assembler #

Patch Set 4 : ToJS/FromJS Stubs #

Patch Set 5 : Rebase #

Total comments: 4

Patch Set 6 : Add implementation todos #

Total comments: 2

Patch Set 7 : Remove dependency on linkage #

Patch Set 8 : Install native function map from bootstrapper.cc #

Patch Set 9 : Rebase #

Total comments: 12

Patch Set 10 : Introduce FFIAssembler class #

Total comments: 4

Patch Set 11 : Set code on sharedfunctioninfos + rebase #

Patch Set 12 : Move FFIAssembler from .h to .cc #

Unified diffs Side-by-side diffs Delta from patch set Stats (+205 lines, -0 lines) Patch
M BUILD.gn View 1 2 3 4 5 6 7 8 9 10 1 chunk +2 lines, -0 lines 0 comments Download
M src/bootstrapper.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +3 lines, -0 lines 0 comments Download
M src/compiler/code-assembler.h View 1 2 3 4 5 6 7 8 9 10 2 chunks +4 lines, -0 lines 0 comments Download
M src/compiler/code-assembler.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +13 lines, -0 lines 0 comments Download
M src/contexts.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M src/factory.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -0 lines 0 comments Download
A src/ffi/OWNERS View 1 2 3 4 5 6 1 chunk +2 lines, -0 lines 0 comments Download
A src/ffi/ffi-compiler.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +35 lines, -0 lines 0 comments Download
A src/ffi/ffi-compiler.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +99 lines, -0 lines 0 comments Download
M src/v8.gyp View 1 2 3 4 5 6 7 8 9 10 1 chunk +2 lines, -0 lines 0 comments Download
M test/cctest/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -0 lines 0 comments Download
M test/cctest/cctest.gyp View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
A test/cctest/ffi/OWNERS View 1 2 3 4 5 6 1 chunk +2 lines, -0 lines 0 comments Download
A test/cctest/ffi/test-ffi.cc View 1 2 3 4 5 6 7 8 9 1 chunk +39 lines, -0 lines 0 comments Download

Messages

Total messages: 50 (30 generated)
ofrobots
On 2016/12/29 23:24:23, mattloring wrote: > mailto:mattloring@google.com changed reviewers: > + mailto:ofrobots@google.com Looking like a ...
3 years, 11 months ago (2017-01-12 19:29:39 UTC) #3
ofrobots
https://codereview.chromium.org/2607993003/diff/80001/src/compiler/ffi-compiler.cc File src/compiler/ffi-compiler.cc (right): https://codereview.chromium.org/2607993003/diff/80001/src/compiler/ffi-compiler.cc#newcode45 src/compiler/ffi-compiler.cc:45: UNREACHABLE(); Add a // TODO: needs to be implemented ...
3 years, 11 months ago (2017-01-12 19:29:47 UTC) #4
mattloring
https://codereview.chromium.org/2607993003/diff/80001/src/compiler/ffi-compiler.cc File src/compiler/ffi-compiler.cc (right): https://codereview.chromium.org/2607993003/diff/80001/src/compiler/ffi-compiler.cc#newcode45 src/compiler/ffi-compiler.cc:45: UNREACHABLE(); On 2017/01/12 19:29:47, ofrobots wrote: > Add a ...
3 years, 11 months ago (2017-01-12 19:40:11 UTC) #5
Benedikt Meurer
The ffi-compiler shouldn't be inside the compiler directory, but it should ideally be in a ...
3 years, 11 months ago (2017-01-16 11:57:05 UTC) #10
Michael Starzinger
Yes, +1 on not having the FFI-compiler be inside the "compile" directory.
3 years, 11 months ago (2017-01-16 12:03:17 UTC) #11
Michael Starzinger
https://codereview.chromium.org/2607993003/diff/100001/src/compiler/code-assembler.h File src/compiler/code-assembler.h (right): https://codereview.chromium.org/2607993003/diff/100001/src/compiler/code-assembler.h#newcode367 src/compiler/code-assembler.h:367: Node* CallCFunctionN(CallDescriptor* descriptor, int input_count, The {compiler::CallDescriptor} struct is ...
3 years, 11 months ago (2017-01-16 12:10:12 UTC) #12
Michael Starzinger
https://codereview.chromium.org/2607993003/diff/100001/src/compiler/ffi-compiler.cc File src/compiler/ffi-compiler.cc (right): https://codereview.chromium.org/2607993003/diff/100001/src/compiler/ffi-compiler.cc#newcode83 src/compiler/ffi-compiler.cc:83: Linkage::GetJSCallContextParamIndex(params_with_recv)); Once the FFI-compiler moves to outside of the ...
3 years, 11 months ago (2017-01-16 12:32:01 UTC) #13
mattloring
On 2017/01/16 12:32:01, Michael Starzinger wrote: > https://codereview.chromium.org/2607993003/diff/100001/src/compiler/ffi-compiler.cc > File src/compiler/ffi-compiler.cc (right): > > https://codereview.chromium.org/2607993003/diff/100001/src/compiler/ffi-compiler.cc#newcode83 ...
3 years, 11 months ago (2017-01-17 20:01:18 UTC) #14
mattloring
On 2017/01/16 12:10:12, Michael Starzinger wrote: > https://codereview.chromium.org/2607993003/diff/100001/src/compiler/code-assembler.h > File src/compiler/code-assembler.h (right): > > https://codereview.chromium.org/2607993003/diff/100001/src/compiler/code-assembler.h#newcode367 ...
3 years, 11 months ago (2017-01-17 20:01:37 UTC) #15
mattloring
On 2017/01/16 12:03:17, Michael Starzinger wrote: > Yes, +1 on not having the FFI-compiler be ...
3 years, 11 months ago (2017-01-17 20:01:49 UTC) #16
mattloring
The ffi-compiler now lives in its own directory (src/ffi) and does not depend on (src/compiler).
3 years, 11 months ago (2017-01-17 20:02:37 UTC) #17
Michael Starzinger
LGTM on the plumbing outside the "ffi" directory, just skimmed the "ffi" internals. If you ...
3 years, 11 months ago (2017-01-18 10:47:24 UTC) #27
Igor Sheludko
https://codereview.chromium.org/2607993003/diff/160001/src/ffi/ffi-compiler.cc File src/ffi/ffi-compiler.cc (right): https://codereview.chromium.org/2607993003/diff/160001/src/ffi/ffi-compiler.cc#newcode42 src/ffi/ffi-compiler.cc:42: Node* ToJS(CodeStubAssembler* assembler, Node* node, Node* context, I'd suggest ...
3 years, 11 months ago (2017-01-18 15:20:22 UTC) #28
mattloring
https://codereview.chromium.org/2607993003/diff/160001/src/compiler/code-assembler.cc File src/compiler/code-assembler.cc (right): https://codereview.chromium.org/2607993003/diff/160001/src/compiler/code-assembler.cc#newcode254 src/compiler/code-assembler.cc:254: DCHECK(desc->kind() == CallDescriptor::kCallJSFunction); On 2017/01/18 10:47:23, Michael Starzinger wrote: ...
3 years, 11 months ago (2017-01-18 17:48:19 UTC) #29
Igor Sheludko
nits: https://codereview.chromium.org/2607993003/diff/180001/src/ffi/ffi-compiler.cc File src/ffi/ffi-compiler.cc (right): https://codereview.chromium.org/2607993003/diff/180001/src/ffi/ffi-compiler.cc#newcode70 src/ffi/ffi-compiler.cc:70: return GenerateCode(state()); I'd move the GenerateCode() call to ...
3 years, 11 months ago (2017-01-18 18:18:14 UTC) #34
mattloring
https://codereview.chromium.org/2607993003/diff/180001/src/ffi/ffi-compiler.cc File src/ffi/ffi-compiler.cc (right): https://codereview.chromium.org/2607993003/diff/180001/src/ffi/ffi-compiler.cc#newcode70 src/ffi/ffi-compiler.cc:70: return GenerateCode(state()); On 2017/01/18 18:18:14, Igor Sheludko wrote: > ...
3 years, 11 months ago (2017-01-18 18:26:24 UTC) #37
Igor Sheludko
lgtm. thanks!
3 years, 11 months ago (2017-01-18 18:28:34 UTC) #38
ofrobots
On 2017/01/18 18:28:34, Igor Sheludko wrote: > lgtm. thanks! LGTM
3 years, 11 months ago (2017-01-18 18:36:16 UTC) #40
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2607993003/220001
3 years, 11 months ago (2017-01-18 19:11:32 UTC) #47
commit-bot: I haz the power
3 years, 11 months ago (2017-01-18 19:13:58 UTC) #50
Message was sent while issue was closed.
Committed patchset #12 (id:220001) as
https://chromium.googlesource.com/v8/v8/+/0ecc6b060045d617ac31d94816054d2a3cc...

Powered by Google App Engine
This is Rietveld 408576698