RESOLVED FIXED 133751
[ftlopt] DFG get_by_id should inline chain accesses with a slightly polymorphic base
https://bugs.webkit.org/show_bug.cgi?id=133751
Summary [ftlopt] DFG get_by_id should inline chain accesses with a slightly polymorph...
Filip Pizlo
Reported 2014-06-11 11:01:30 PDT
Patch forthcoming
Attachments
proposed patch (22.73 KB, patch)
2014-06-11 17:44 PDT, Filip Pizlo
mhahnenberg: review+
Filip Pizlo
Comment 1 2014-06-11 17:44:10 PDT
Created attachment 232924 [details] proposed patch Not yet ready for review because I'm still testing performance
Filip Pizlo
Comment 2 2014-06-11 19:52:58 PDT
Comment on attachment 232924 [details] proposed patch The performance is good.
Oliver Hunt
Comment 3 2014-06-12 10:15:33 PDT
Comment on attachment 232924 [details] proposed patch View in context: https://bugs.webkit.org/attachment.cgi?id=232924&action=review > Source/JavaScriptCore/bytecode/GetByIdVariant.cpp:56 > + if (!!m_chain != !!other.m_chain) !m_chain != !other.m_chain is a bit clearer and logically equivalent. > Source/JavaScriptCore/bytecode/PutByIdStatus.cpp:312 > - if (!chain->isNormalized()) > + if (structure->isProxy() || !chain->isNormalized()) Does this belong in this patch?
Filip Pizlo
Comment 4 2014-06-12 10:21:44 PDT
(In reply to comment #3) > (From update of attachment 232924 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=232924&action=review > > > Source/JavaScriptCore/bytecode/GetByIdVariant.cpp:56 > > + if (!!m_chain != !!other.m_chain) > > !m_chain != !other.m_chain is a bit clearer and logically equivalent. > > > Source/JavaScriptCore/bytecode/PutByIdStatus.cpp:312 > > - if (!chain->isNormalized()) > > + if (structure->isProxy() || !chain->isNormalized()) > > Does this belong in this patch? Yes.
Mark Hahnenberg
Comment 5 2014-06-12 10:36:03 PDT
Comment on attachment 232924 [details] proposed patch r=me
Filip Pizlo
Comment 6 2014-06-12 10:43:57 PDT
Note You need to log in before you can comment on or make changes to this bug.