WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
108093
Static size inference for JavaScript objects
https://bugs.webkit.org/show_bug.cgi?id=108093
Summary
Static size inference for JavaScript objects
Geoffrey Garen
Reported
2013-01-28 11:02:39 PST
Static size inference for JavaScript objects
Attachments
Patch
(150.52 KB, patch)
2013-01-28 13:02 PST
,
Geoffrey Garen
no flags
Details
Formatted Diff
Diff
Patch
(151.29 KB, patch)
2013-01-28 17:55 PST
,
Geoffrey Garen
no flags
Details
Formatted Diff
Diff
Patch
(152.04 KB, patch)
2013-01-28 19:47 PST
,
Geoffrey Garen
no flags
Details
Formatted Diff
Diff
Patch
(152.62 KB, patch)
2013-01-28 21:35 PST
,
Geoffrey Garen
ggaren
: review+
Details
Formatted Diff
Diff
Benchmark results
(22.91 KB, text/plain)
2013-01-29 13:34 PST
,
Geoffrey Garen
no flags
Details
Show Obsolete
(3)
View All
Add attachment
proposed patch, testcase, etc.
Geoffrey Garen
Comment 1
2013-01-28 13:02:29 PST
Created
attachment 185041
[details]
Patch
Early Warning System Bot
Comment 2
2013-01-28 13:11:38 PST
Comment on
attachment 185041
[details]
Patch
Attachment 185041
[details]
did not pass qt-ews (qt): Output:
http://queues.webkit.org/results/16165688
Early Warning System Bot
Comment 3
2013-01-28 13:12:11 PST
Comment on
attachment 185041
[details]
Patch
Attachment 185041
[details]
did not pass qt-wk2-ews (qt): Output:
http://queues.webkit.org/results/16165687
Filip Pizlo
Comment 4
2013-01-28 13:16:09 PST
Comment on
attachment 185041
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=185041&action=review
> Source/JavaScriptCore/ChangeLog:128 > + (JSC::DFG::AbstractState::execute): Upated for rename.
Typo "Upated"
> Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp:757 > +UnlinkedValueProfile BytecodeGenerator::emitProfiledOpcode(int dst, OpcodeID opcodeID) > { > + m_staticPropertyAnalyzer.kill(dst);
Seems like it would be good to change the name of emitProfiledOpcode, since it does things to staticPropertyAnalyzer now. Not sure what a good name would be.
> Source/JavaScriptCore/bytecompiler/StaticPropertyAnalyzer.h:38 > +// Used for flow-insensitive static analysis of the number of properties assigned to an object. > +class StaticPropertyAnalyzer { > +public: > + StaticPropertyAnalyzer(Vector<UnlinkedInstruction>*); > +
Is it the case that this analysis can be wrong, and even if it is, the program will execute "correctly" albeit possibly less efficiently? If so, then you should add a comment about this. It's useful to be able to remember which analyses have to be sound at any cost (DFG::AbstractState) and which can be wrong (this one).
Build Bot
Comment 5
2013-01-28 13:28:47 PST
Comment on
attachment 185041
[details]
Patch
Attachment 185041
[details]
did not pass win-ews (win): Output:
http://queues.webkit.org/results/16155740
Build Bot
Comment 6
2013-01-28 14:13:14 PST
Comment on
attachment 185041
[details]
Patch
Attachment 185041
[details]
did not pass mac-wk2-ews (mac-wk2): Output:
http://queues.webkit.org/results/16180219
EFL EWS Bot
Comment 7
2013-01-28 14:59:36 PST
Comment on
attachment 185041
[details]
Patch
Attachment 185041
[details]
did not pass efl-ews (efl): Output:
http://queues.webkit.org/results/16180241
Build Bot
Comment 8
2013-01-28 17:10:33 PST
Comment on
attachment 185041
[details]
Patch
Attachment 185041
[details]
did not pass mac-ews (mac): Output:
http://queues.webkit.org/results/16184074
Geoffrey Garen
Comment 9
2013-01-28 17:47:23 PST
> Typo "Upated"
Fixed.
> Seems like it would be good to change the name of emitProfiledOpcode, since it does things to staticPropertyAnalyzer now. Not sure what a good name would be.
This convinced me that I should just use a separate helper function instead. The fact that it corresponds to place where we call emitProfiledOpcode is just a coincidence, I guess.
> Is it the case that this analysis can be wrong, and even if it is, the program will execute "correctly" albeit possibly less efficiently?
Yes.
> If so, then you should add a comment about this.
Okeedokee. Looking at the EWS failures now...
Geoffrey Garen
Comment 10
2013-01-28 17:55:50 PST
Created
attachment 185119
[details]
Patch
Build Bot
Comment 11
2013-01-28 18:23:20 PST
Comment on
attachment 185119
[details]
Patch
Attachment 185119
[details]
did not pass win-ews (win): Output:
http://queues.webkit.org/results/16182227
Geoffrey Garen
Comment 12
2013-01-28 19:47:27 PST
Created
attachment 185134
[details]
Patch
Build Bot
Comment 13
2013-01-28 21:19:49 PST
Comment on
attachment 185134
[details]
Patch
Attachment 185134
[details]
did not pass win-ews (win): Output:
http://queues.webkit.org/results/16156963
Geoffrey Garen
Comment 14
2013-01-28 21:35:58 PST
Created
attachment 185149
[details]
Patch
Geoffrey Garen
Comment 15
2013-01-28 21:49:24 PST
Committed
r141050
: <
http://trac.webkit.org/changeset/141050
>
Geoffrey Garen
Comment 16
2013-01-29 13:33:49 PST
Comment on
attachment 185149
[details]
Patch Phil Pizlo reviewed this.
Geoffrey Garen
Comment 17
2013-01-29 13:34:14 PST
Created
attachment 185298
[details]
Benchmark results
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