Speedometer spends around 1% of its time in this function. Lets inline it to not pay for the overhead of the call.
Created attachment 288226 [details] WIP This patch has some other stuff for HasOwnProperty that I was experimenting with. The interesting bits related to this bug are the AssemblyHelpers function: convertValueToBoolean
I still need to make masqueradesAsUndefined work as expected.
Created attachment 288327 [details] patch
Created attachment 288329 [details] patch
Attachment 288329 [details] did not pass style-queue: ERROR: Source/JavaScriptCore/jit/AssemblyHelpers.h:1530: The parameter name "value" adds no information, so it should be removed. [readability/parameter_name] [5] Total errors found: 1 in 9 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 288329 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=288329&action=review > Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp:1694 > + bool shouldCheckMasqueradesAsUndefined = !masqueradesAsUndefinedWatchpointIsStillValid(); Where do you register the MasqueradesAsUndefined watchpoint? Hint: everyone else seems to do it in FixupPhase. > Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp:1840 > + bool shouldCheckMasqueradesAsUndefined = !masqueradesAsUndefinedWatchpointIsStillValid(); Ditto. > Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp:1843 > + bool shouldCheckMasqueradesAsUndefined = !masqueradesAsUndefinedWatchpointIsStillValid(); Ditto. > Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp:2002 > + bool shouldCheckMasqueradesAsUndefined = !masqueradesAsUndefinedWatchpointIsStillValid(); Ditto.
Created attachment 288332 [details] patch Nice catch. Fixed.
Attachment 288332 [details] did not pass style-queue: ERROR: Source/JavaScriptCore/jit/AssemblyHelpers.h:1530: The parameter name "value" adds no information, so it should be removed. [readability/parameter_name] [5] Total errors found: 1 in 10 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 288332 [details] patch Clearing flags on attachment: 288332 Committed r205675: <http://trac.webkit.org/changeset/205675>
All reviewed patches have been landed. Closing bug.