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

Issue 2777203007: [builtins] Introduce new TFC macro and auto-generate TFS descriptors (Closed)

Created:
3 years, 8 months ago by jgruber
Modified:
3 years, 8 months ago
CC:
v8-reviews_googlegroups.com, v8-mips-ports_googlegroups.com, v8-x87-ports_googlegroups.com, v8-ppc-ports_googlegroups.com, Benedikt Meurer, Yang, caitp (chromium), gsathya
Target Ref:
refs/heads/master
Project:
v8
Visibility:
Public.

Description

[builtins] Introduce new TFC macro and auto-generate TFS descriptors Split TFS builtins into * TFC: TF builtins with stub linkage that use a custom interface descriptor (e.g. because of a non-standard return size or untagged arguments) * TFS: the rest. Automatically generate interface descriptors for TFS builtins to reduce boilerplate involved in setting up stub calls. These are now as simple as creating the TFS stub and using CSA::CallBuiltin, no extra work required. BUG=v8:6116 Review-Url: https://codereview.chromium.org/2777203007 Cr-Commit-Position: refs/heads/master@{#44490} Committed: https://chromium.googlesource.com/v8/v8/+/9ddfeafe94833bcb64a3dad8e3cf0cf65239af21

Patch Set 1 #

Patch Set 2 : Format #

Total comments: 2

Patch Set 3 : Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+155 lines, -551 lines) Patch
M src/arm/interface-descriptors-arm.cc View 1 2 1 chunk +0 lines, -40 lines 0 comments Download
M src/arm64/interface-descriptors-arm64.cc View 1 2 1 chunk +0 lines, -40 lines 0 comments Download
M src/builtins/builtins.h View 1 2 1 chunk +1 line, -1 line 0 comments Download
M src/builtins/builtins.cc View 1 2 3 chunks +3 lines, -3 lines 0 comments Download
M src/builtins/builtins-async-generator-gen.cc View 1 2 1 chunk +0 lines, -1 line 0 comments Download
M src/builtins/builtins-definitions.h View 1 2 16 chunks +115 lines, -108 lines 0 comments Download
M src/builtins/builtins-descriptors.h View 1 chunk +7 lines, -3 lines 0 comments Download
M src/builtins/builtins-regexp-gen.cc View 1 2 2 chunks +2 lines, -2 lines 0 comments Download
M src/builtins/setup-builtins-internal.cc View 1 2 2 chunks +10 lines, -3 lines 0 comments Download
M src/ia32/interface-descriptors-ia32.cc View 1 2 1 chunk +0 lines, -28 lines 0 comments Download
M src/interface-descriptors.h View 1 2 10 chunks +14 lines, -155 lines 0 comments Download
M src/interface-descriptors.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/isolate.cc View 1 2 1 chunk +2 lines, -2 lines 0 comments Download
M src/mips/interface-descriptors-mips.cc View 1 2 1 chunk +0 lines, -28 lines 0 comments Download
M src/mips64/interface-descriptors-mips64.cc View 1 2 1 chunk +0 lines, -28 lines 0 comments Download
M src/ppc/interface-descriptors-ppc.cc View 1 2 1 chunk +0 lines, -28 lines 0 comments Download
M src/s390/interface-descriptors-s390.cc View 1 2 1 chunk +0 lines, -24 lines 0 comments Download
M src/x64/interface-descriptors-x64.cc View 1 2 1 chunk +0 lines, -28 lines 0 comments Download
M src/x87/interface-descriptors-x87.cc View 1 chunk +0 lines, -28 lines 0 comments Download

Messages

Total messages: 25 (17 generated)
jgruber
Hey Igor, PTAL. The gist is that interface descriptors for TFS builtins are now automatically ...
3 years, 8 months ago (2017-03-29 09:52:18 UTC) #6
Igor Sheludko
lgtm https://codereview.chromium.org/2777203007/diff/20001/src/builtins/builtins-definitions.h File src/builtins/builtins-definitions.h (right): https://codereview.chromium.org/2777203007/diff/20001/src/builtins/builtins-definitions.h#newcode40 src/builtins/builtins-definitions.h:40: // Args: name, interface descriptor, return_size It looks ...
3 years, 8 months ago (2017-04-04 09:05:43 UTC) #9
jgruber
Thanks for the review, I'll get started with rebasing. https://codereview.chromium.org/2777203007/diff/20001/src/builtins/builtins-definitions.h File src/builtins/builtins-definitions.h (right): https://codereview.chromium.org/2777203007/diff/20001/src/builtins/builtins-definitions.h#newcode40 src/builtins/builtins-definitions.h:40: ...
3 years, 8 months ago (2017-04-07 08:41:11 UTC) #10
jgruber
On 2017/04/07 08:41:11, jgruber wrote: > Thanks for the review, I'll get started with rebasing. ...
3 years, 8 months ago (2017-04-07 15:20:56 UTC) #14
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/2777203007/40001
3 years, 8 months ago (2017-04-07 15:40:35 UTC) #19
commit-bot: I haz the power
Committed patchset #3 (id:40001) as https://chromium.googlesource.com/v8/v8/+/9ddfeafe94833bcb64a3dad8e3cf0cf65239af21
3 years, 8 months ago (2017-04-07 15:42:28 UTC) #22
Benedikt Meurer
This was quite surprising to discover in the morning. Some general heads-up before landing these ...
3 years, 8 months ago (2017-04-10 05:52:36 UTC) #24
jgruber
3 years, 8 months ago (2017-04-10 07:07:18 UTC) #25
Message was sent while issue was closed.
On 2017/04/10 05:52:36, Benedikt Meurer wrote:
> This was quite surprising to discover in the morning. Some general heads-up
> before landing these changes would be nice in the future. This broke existing
> CLs in flight. Why didn't we keep TFS the way it was and just introduced a new
> one for the auto-generate magic?

Sorry for the additional rebasing work, I'll announce on the list. The decision
between
TFS/TFC was fairly arbitrary: TFS is intended to be the standard builtin type,
TFC the custom
one.

Powered by Google App Engine
This is Rietveld 408576698