Bug 20984 - convert masqueradeAsUndefined from a virtual function to a TypeInfo flag
Summary: convert masqueradeAsUndefined from a virtual function to a TypeInfo flag
Status: RESOLVED DUPLICATE of bug 20823
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: Mac OS X 10.5
: P2 Normal
Assignee: Darin Adler
URL:
Keywords:
Depends on:
Blocks: 20813
  Show dependency treegraph
 
Reported: 2008-09-21 21:33 PDT by Darin Adler
Modified: 2008-09-22 06:31 PDT (History)
2 users (show)

See Also:


Attachments
work in progress (17.02 KB, patch)
2008-09-21 21:34 PDT, Darin Adler
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Darin Adler 2008-09-21 21:33:37 PDT
We will convert masqueradeAsUndefined from a virtual function to a TypeInfo flag. Then we can make operations involving the flag faster.
Comment 1 Darin Adler 2008-09-21 21:34:25 PDT
Created attachment 23640 [details]
work in progress

Patch seems to work, but is not a speedup.
Comment 2 Gavin Barraclough 2008-09-22 04:42:35 PDT
We can probably turn this into a speedup by using it to allow us to JIT generate eq_null / neq_null.

This is implemented in https://bugs.webkit.org/show_bug.cgi?id=20862 using a vptr hack – but broke a test in the webkit tests (never debugged – I'm guessing someone does subclass StringObjectThatMasqueradesAsUndefined, or there is another subclass that implements 'masqueradeAsUndefined()' – in which case the vptr hack won't have been safe).
Comment 3 Maciej Stachowiak 2008-09-22 06:31:23 PDT
did a version of this with the JIT logic, see bug 20823

*** This bug has been marked as a duplicate of 20823 ***