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

Issue 1660263003: Revert of [api] Make ObjectTemplate::SetNativeDataProperty() work even if the ObjectTemplate ... (Closed)

Created:
4 years, 10 months ago by Michael Hablich
Modified:
4 years, 10 months ago
CC:
v8-reviews_googlegroups.com, v8-mips-ports_googlegroups.com, v8-x87-ports_googlegroups.com, v8-ppc-ports_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Revert of [api] Make ObjectTemplate::SetNativeDataProperty() work even if the ObjectTemplate does not have a … (patchset #3 id:80001 of https://codereview.chromium.org/1642223003/ ) Reason for revert: Fails a lot of layout tests and blocks the roll. Can be easily reproduced with a local Chromium checkout. Reference: https://codereview.chromium.org/1652413003/ Original issue's description: > [api] Make ObjectTemplate::SetNativeDataProperty() work even if the ObjectTemplate does not have a constructor. > > Previously ObjectTemplate::New() logic relied on the fact that all the accessor properties are already installed in the initial map of the function object of the constructor FunctionTemplate. > When the FunctionTemplate were instantiated the accessors of the instance templates from the whole inheritance chain were accumulated and added to the initial map. > ObjectTemplate::SetSetAccessor() used to explicitly ensure that the ObjectTemplate has a constructor and therefore an initial map to add all accessors to. > > The new approach is to add all the accessors and data properties to the object exactly when the ObjectTemplate is instantiated. In order to keep it fast we now cache the object boilerplates in the Isolate::template_instantiations_cache (the former function_cache), so the object creation turns to be a deep copying of the boilerplate object. > > This CL also prohibits non-primitive properties in ObjectTemplate to avoid potential cross-context leaks. > > BUG=chromium:579009 > LOG=Y > > Committed: https://crrev.com/6a118774244d087b5979e9291d628a994f21d59d > Cr-Commit-Position: refs/heads/master@{#33674} TBR=verwaest@chromium.org,ishell@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:579009 Committed: https://crrev.com/db47a31fb9ceefb260a415e4882822a852084221 Cr-Commit-Position: refs/heads/master@{#33698}

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+311 lines, -582 lines) Patch
M src/api.cc View 7 chunks +31 lines, -28 lines 0 comments Download
M src/api-natives.h View 1 chunk +4 lines, -0 lines 0 comments Download
M src/api-natives.cc View 8 chunks +111 lines, -111 lines 0 comments Download
M src/arm/builtins-arm.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/arm64/builtins-arm64.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/bootstrapper.cc View 1 chunk +2 lines, -3 lines 0 comments Download
M src/builtins.cc View 3 chunks +9 lines, -20 lines 0 comments Download
M src/contexts.h View 1 chunk +1 line, -2 lines 0 comments Download
M src/conversions.h View 1 chunk +1 line, -1 line 0 comments Download
M src/conversions-inl.h View 1 chunk +0 lines, -4 lines 0 comments Download
M src/ia32/builtins-ia32.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/mips/builtins-mips.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/mips64/builtins-mips64.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/objects.h View 4 chunks +6 lines, -7 lines 0 comments Download
M src/objects.cc View 1 chunk +0 lines, -19 lines 0 comments Download
M src/objects-inl.h View 1 chunk +1 line, -1 line 0 comments Download
M src/objects-printer.cc View 17 chunks +39 lines, -40 lines 0 comments Download
M src/ppc/builtins-ppc.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/x64/builtins-x64.cc View 1 chunk +1 line, -1 line 0 comments Download
M src/x87/builtins-x87.cc View 1 chunk +1 line, -1 line 0 comments Download
M test/cctest/test-api.cc View 9 chunks +98 lines, -338 lines 0 comments Download

Messages

Total messages: 5 (2 generated)
Michael Hablich
Created Revert of [api] Make ObjectTemplate::SetNativeDataProperty() work even if the ObjectTemplate does not have a ...
4 years, 10 months ago (2016-02-03 09:52:16 UTC) #1
Michael Achenbach
On 2016/02/03 09:52:16, Hablich wrote: > Created Revert of [api] Make ObjectTemplate::SetNativeDataProperty() work even > ...
4 years, 10 months ago (2016-02-03 10:01:14 UTC) #4
Michael Hablich
4 years, 10 months ago (2016-02-03 10:03:31 UTC) #5
Message was sent while issue was closed.
On 2016/02/03 10:01:14, Michael Achenbach wrote:
> On 2016/02/03 09:52:16, Hablich wrote:
> > Created Revert of [api] Make ObjectTemplate::SetNativeDataProperty() work
even
> > if the ObjectTemplate does not have a …
> 
> Could you point me to a failing layout test? I don't see any on our bots. And
as
> far as I remember, the layout tests don't even run on deps changes on the CQ.

I bisected with out/Release/interactive_ui_tests
--gtest_filter=WebViewInteractiveTest.Focus_AdvanceFocus. Taken from the log in
https://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium....

So it is a non-layout test.

Powered by Google App Engine
This is Rietveld 408576698