WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
183429
[JSC] Add inherits<T>(VM&) leveraging JSCast fast path
https://bugs.webkit.org/show_bug.cgi?id=183429
Summary
[JSC] Add inherits<T>(VM&) leveraging JSCast fast path
Yusuke Suzuki
Reported
2018-03-07 23:12:27 PST
[JSC] Add inherits<T>(VM&) leveraging JSCast fast path
Attachments
Patch
(156.72 KB, patch)
2018-03-07 23:15 PST
,
Yusuke Suzuki
no flags
Details
Formatted Diff
Diff
Patch
(156.73 KB, patch)
2018-03-08 00:38 PST
,
Yusuke Suzuki
no flags
Details
Formatted Diff
Diff
Patch
(160.23 KB, patch)
2018-03-08 01:19 PST
,
Yusuke Suzuki
no flags
Details
Formatted Diff
Diff
Patch
(160.45 KB, patch)
2018-03-08 01:39 PST
,
Yusuke Suzuki
no flags
Details
Formatted Diff
Diff
Patch
(160.51 KB, patch)
2018-03-08 01:48 PST
,
Yusuke Suzuki
no flags
Details
Formatted Diff
Diff
Archive of layout-test-results from ews112 for mac-sierra
(434.79 KB, application/zip)
2018-03-08 03:02 PST
,
EWS Watchlist
no flags
Details
Patch
(162.24 KB, patch)
2018-03-08 03:10 PST
,
Yusuke Suzuki
mark.lam
: review+
Details
Formatted Diff
Diff
Show Obsolete
(6)
View All
Add attachment
proposed patch, testcase, etc.
Yusuke Suzuki
Comment 1
2018-03-07 23:15:59 PST
Created
attachment 335266
[details]
Patch
EWS Watchlist
Comment 2
2018-03-07 23:25:46 PST
Attachment 335266
[details]
did not pass style-queue: ERROR: Source/WebCore/bindings/js/SerializedScriptValue.cpp:1755: Wrong number of spaces before statement. (expected: 12) [whitespace/indent] [4] ERROR: Source/WebCore/bindings/js/SerializedScriptValue.cpp:1777: Wrong number of spaces before statement. (expected: 12) [whitespace/indent] [4] Total errors found: 2 in 81 files If any of these errors are false positives, please file a bug against check-webkit-style.
Yusuke Suzuki
Comment 3
2018-03-08 00:38:34 PST
Created
attachment 335273
[details]
Patch
EWS Watchlist
Comment 4
2018-03-08 00:42:00 PST
Attachment 335273
[details]
did not pass style-queue: ERROR: Source/WebCore/bindings/js/SerializedScriptValue.cpp:1755: Wrong number of spaces before statement. (expected: 12) [whitespace/indent] [4] ERROR: Source/WebCore/bindings/js/SerializedScriptValue.cpp:1777: Wrong number of spaces before statement. (expected: 12) [whitespace/indent] [4] Total errors found: 2 in 81 files If any of these errors are false positives, please file a bug against check-webkit-style.
Yusuke Suzuki
Comment 5
2018-03-08 01:19:16 PST
Created
attachment 335279
[details]
Patch
EWS Watchlist
Comment 6
2018-03-08 01:23:11 PST
Attachment 335279
[details]
did not pass style-queue: ERROR: Source/WebCore/bindings/js/SerializedScriptValue.cpp:1755: Wrong number of spaces before statement. (expected: 12) [whitespace/indent] [4] ERROR: Source/WebCore/bindings/js/SerializedScriptValue.cpp:1777: Wrong number of spaces before statement. (expected: 12) [whitespace/indent] [4] Total errors found: 2 in 81 files If any of these errors are false positives, please file a bug against check-webkit-style.
Yusuke Suzuki
Comment 7
2018-03-08 01:39:13 PST
Created
attachment 335282
[details]
Patch
EWS Watchlist
Comment 8
2018-03-08 01:42:24 PST
Attachment 335282
[details]
did not pass style-queue: ERROR: Source/WebCore/bindings/js/SerializedScriptValue.cpp:1755: Wrong number of spaces before statement. (expected: 12) [whitespace/indent] [4] ERROR: Source/WebCore/bindings/js/SerializedScriptValue.cpp:1777: Wrong number of spaces before statement. (expected: 12) [whitespace/indent] [4] Total errors found: 2 in 81 files If any of these errors are false positives, please file a bug against check-webkit-style.
Yusuke Suzuki
Comment 9
2018-03-08 01:48:51 PST
Created
attachment 335285
[details]
Patch
EWS Watchlist
Comment 10
2018-03-08 01:51:54 PST
Attachment 335285
[details]
did not pass style-queue: ERROR: Source/WebCore/bindings/js/SerializedScriptValue.cpp:1755: Wrong number of spaces before statement. (expected: 12) [whitespace/indent] [4] ERROR: Source/WebCore/bindings/js/SerializedScriptValue.cpp:1777: Wrong number of spaces before statement. (expected: 12) [whitespace/indent] [4] Total errors found: 2 in 81 files If any of these errors are false positives, please file a bug against check-webkit-style.
EWS Watchlist
Comment 11
2018-03-08 03:02:15 PST
Comment on
attachment 335285
[details]
Patch
Attachment 335285
[details]
did not pass mac-debug-ews (mac): Output:
http://webkit-queues.webkit.org/results/6853687
Number of test failures exceeded the failure limit.
EWS Watchlist
Comment 12
2018-03-08 03:02:17 PST
Created
attachment 335286
[details]
Archive of layout-test-results from ews112 for mac-sierra The attached test failures were seen while running run-webkit-tests on the mac-debug-ews. Bot: ews112 Port: mac-sierra Platform: Mac OS X 10.12.6
Yusuke Suzuki
Comment 13
2018-03-08 03:10:56 PST
Created
attachment 335287
[details]
Patch
EWS Watchlist
Comment 14
2018-03-08 03:17:27 PST
Attachment 335287
[details]
did not pass style-queue: ERROR: Source/WebCore/bindings/js/SerializedScriptValue.cpp:1755: Wrong number of spaces before statement. (expected: 12) [whitespace/indent] [4] ERROR: Source/WebCore/bindings/js/SerializedScriptValue.cpp:1777: Wrong number of spaces before statement. (expected: 12) [whitespace/indent] [4] Total errors found: 2 in 82 files If any of these errors are false positives, please file a bug against check-webkit-style.
Mark Lam
Comment 15
2018-03-08 07:54:49 PST
Comment on
attachment 335287
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=335287&action=review
r=me. Nice work.
> Source/JavaScriptCore/runtime/JSType.h:121 > +static const uint32_t LastObjectType = MaxJSType;
I think you should put your ChangeLog comment near here to explain why you use MaxJSType and not the last type in the enum list. BTW, do we still need LastJSCObjectType? Are the other uses of LastJSCObjectType correct (in light of the bug you found)?
> Source/WebCore/bindings/js/JSEventTargetCustom.cpp:60 > + if (value.inherits<JS##interfaceName>(vm)) \
nit: the amount of whitespace at the end seems arbitrary. Might as well trim it so that the \ is aligned with the line above, or just 1 space after the end of this line.
Yusuke Suzuki
Comment 16
2018-03-08 08:01:50 PST
Comment on
attachment 335287
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=335287&action=review
Thank you!
>> Source/JavaScriptCore/runtime/JSType.h:121 >> +static const uint32_t LastObjectType = MaxJSType; > > I think you should put your ChangeLog comment near here to explain why you use MaxJSType and not the last type in the enum list. BTW, do we still need LastJSCObjectType? Are the other uses of LastJSCObjectType correct (in light of the bug you found)?
Yes, LastJSCObjectType is now used in JSDollarVM to create extended object types by using `LastJSCObjectType + 1`. I think we can use the highest bit + type number instead, but in the meantime, it is used, and I keep it now in this patch. And the other use of LastJSCObjectType is correct :)
>> Source/WebCore/bindings/js/JSEventTargetCustom.cpp:60 >> + if (value.inherits<JS##interfaceName>(vm)) \ > > nit: the amount of whitespace at the end seems arbitrary. Might as well trim it so that the \ is aligned with the line above, or just 1 space after the end of this line.
OK, I'll just put one space before `\` since it is easy to keep it.
Yusuke Suzuki
Comment 17
2018-03-08 08:06:56 PST
Committed
r229410
: <
https://trac.webkit.org/changeset/229410
>
Radar WebKit Bug Importer
Comment 18
2018-03-08 08:07:15 PST
<
rdar://problem/38262932
>
Keith Miller
Comment 19
2018-03-08 14:52:11 PST
Comment on
attachment 335287
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=335287&action=review
> Source/JavaScriptCore/ChangeLog:17 > + We also fix the implementation of jsDynamicCast for JSObject since it uses LastJSCObjectType. > + The embedder can add their extended object types after that.
Oh really? where does this happen?
Yusuke Suzuki
Comment 20
2018-03-08 17:38:08 PST
(In reply to Keith Miller from
comment #19
)
> Comment on
attachment 335287
[details]
> Patch > > View in context: >
https://bugs.webkit.org/attachment.cgi?id=335287&action=review
> > > Source/JavaScriptCore/ChangeLog:17 > > + We also fix the implementation of jsDynamicCast for JSObject since it uses LastJSCObjectType. > > + The embedder can add their extended object types after that. > > Oh really? where does this happen?
You can check WebCore::JSElementType for example ;)
Yusuke Suzuki
Comment 21
2018-03-09 10:02:54 PST
Committed
r229465
: <
https://trac.webkit.org/changeset/229465
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug