Bug 20823

Summary: op_eq_null and op_neq_null are slow
Product: WebKit Reporter: Cameron Zwarich (cpst) <zwarich>
Component: JavaScriptCoreAssignee: Maciej Stachowiak <mjs>
Status: RESOLVED FIXED    
Severity: Normal CC: darin
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 20813    
Attachments:
Description Flags
path that speeds up eq_nul / neq_null hyatt: review+

Description Cameron Zwarich (cpst) 2008-09-12 18:12:56 PDT
op_eq_null and op_neq_null take up 1.9% and 1.8% of the total Shark time on the V8 Richards benchmark. It should be possible to optimize them further.
Comment 1 Geoffrey Garen 2008-09-15 12:20:15 PDT
Once Darin finishes giving StructureIDs to all DOM objects, we can move the masqueradesAsUndefined() bit into the StructureID, instead of a virtual function. Then, op_eq_null and op_neq_null can be completely inlined.
Comment 2 Maciej Stachowiak 2008-09-22 06:31:23 PDT
*** Bug 20984 has been marked as a duplicate of this bug. ***
Comment 3 Maciej Stachowiak 2008-09-22 06:37:00 PDT
Created attachment 23649 [details]
path that speeds up eq_nul / neq_null
Comment 4 Dave Hyatt 2008-09-22 06:39:39 PDT
Don't you need to add the new file in WebCore to the other project files?

Comment 5 Dave Hyatt 2008-09-22 06:46:42 PDT
Comment on attachment 23649 [details]
path that speeds up eq_nul / neq_null

r=me, but please patch all project files.
Comment 6 Maciej Stachowiak 2008-09-22 07:27:36 PDT
Landed (w/ fixes to other project files).
Comment 7 David Kilzer (:ddkilzer) 2008-09-22 11:14:41 PDT
(In reply to comment #6)
> Landed (w/ fixes to other project files).

r36764