Bug 96311 - Remove m_classInfo from JSCell
Summary: Remove m_classInfo from JSCell
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Mark Hahnenberg
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-09-10 13:38 PDT by Mark Hahnenberg
Modified: 2012-09-10 22:05 PDT (History)
3 users (show)

See Also:


Attachments
Patch (15.49 KB, patch)
2012-09-10 17:50 PDT, Mark Hahnenberg
no flags Details | Formatted Diff | Diff
Patch (15.50 KB, patch)
2012-09-10 18:09 PDT, Mark Hahnenberg
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Hahnenberg 2012-09-10 13:38:27 PDT
Now that no one is using the ClassInfo in JSCell, we can remove it for the greater good.
Comment 1 Mark Hahnenberg 2012-09-10 17:50:16 PDT
Created attachment 163257 [details]
Patch
Comment 2 Mark Hahnenberg 2012-09-10 18:09:27 PDT
Created attachment 163258 [details]
Patch
Comment 3 Oliver Hunt 2012-09-10 18:14:21 PDT
Comment on attachment 163258 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=163258&action=review

r=me assuming 32_64 changes are in fact legitimate

> Source/JavaScriptCore/llint/LowLevelInterpreter.asm:91
> +    const InlineStorageCapacity = 7

Does 32bit gain a full JSValue in a cell?  You've removed one pointer but a value is 64bits.

> Source/JavaScriptCore/runtime/PropertyOffset.h:39
> -#define INLINE_STORAGE_CAPACITY 6
> +#define INLINE_STORAGE_CAPACITY 7
>  #else
> -#define INLINE_STORAGE_CAPACITY 5
> +#define INLINE_STORAGE_CAPACITY 6

See  my earlier comment
Comment 4 Mark Hahnenberg 2012-09-10 18:40:32 PDT
(In reply to comment #3)
> (From update of attachment 163258 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=163258&action=review
> 
> r=me assuming 32_64 changes are in fact legitimate
> 
> > Source/JavaScriptCore/llint/LowLevelInterpreter.asm:91
> > +    const InlineStorageCapacity = 7
> 
> Does 32bit gain a full JSValue in a cell?  You've removed one pointer but a value is 64bits.
> 
It should be okay because I removed a void* that was added on 32_64 to pad out JSObjects after I removed inheritorID a while back. So technically there were two pointer-sized removals on 32_64 in this patch.
Comment 5 Mark Hahnenberg 2012-09-10 18:41:10 PDT
> It should be okay because I removed a void* that was added on 32_64 to pad out JSObjects after I removed inheritorID a while back. So technically there were two pointer-sized removals on 32_64 in this patch.

(See changes to JSObject.h in this patch)
Comment 6 WebKit Review Bot 2012-09-10 22:05:30 PDT
Comment on attachment 163258 [details]
Patch

Clearing flags on attachment: 163258

Committed r128146: <http://trac.webkit.org/changeset/128146>
Comment 7 WebKit Review Bot 2012-09-10 22:05:34 PDT
All reviewed patches have been landed.  Closing bug.