Compare Revisions

WebIDL bindings

Change Revisions

Revision 350061:

Revision 350061 by Bzbarsky on

Revision 350065:

Revision 350065 by Bzbarsky on

Title:
WebIDL bindings
WebIDL bindings
Slug:
Mozilla/WebIDL_bindings
Mozilla/WebIDL_bindings
Tags:
"WebIDL"
"WebIDL"
Content:

Revision 350061
Revision 350065
n710      Used to flag attributes whose getter has no side-effects ann710      Used to flag attributes whose getter has no side-effects an
>d keeps returning the same value as long as no DOM methods or set>d keeps returning the same value as long as no DOM methods or set
>ters are executed.  This allows the JIT to perform loop-hois>ters are executed.  This allows the JIT to perform loop-hois
>ting and common subexpression elimination on the return values of>ting and common subexpression elimination on the return values of
> these attributes in some cases.  Note that side-effects inc> these attributes in some cases.  Note that side-effects inc
>lude throwing exceptions, so any attribute that has the <code>[Th>lude throwing exceptions, so any attribute that has the <code>[Th
>rows]</code> or <code>[GetterThrows]</code> annotation cannot be >rows]</code> or <code>[GetterThrows]</code> extended attribute ca
>marked <code>[Pure]</code>.>nnot be marked <code>[Pure]</code>.&nbsp; This extended can be us
 >ed on writable attributes as long as the getter obeys the above r
 >ules.
t716      Used to flag readonly attributes that could have been annott716      Used to flag readonly attributes that could have been annot
>ated with <code>[Pure]</code> and also always return the same val>ated with <code>[Pure]</code> and also always return the same val
>ue.&nbsp; This allows the JIT to do even more aggressive optimiza>ue.&nbsp; This allows the JIT to do even more aggressive optimiza
>tion of getters for such attributes.&nbsp; This should only be us>tion of getters for such attributes.&nbsp; This should only be us
>ed when it's absolutely guaranteed that the return value of the a>ed when it's absolutely guaranteed that the return value of the a
>ttribute getter will always be the same from the JS engine's poin>ttribute getter will always be the same from the JS engine's poin
>t of view.&nbsp; This annotation implies <code>[Pure]</code> as f>t of view.&nbsp; This extended attribute implies <code>[Pure]</co
>ar as the JIT is concerned.>de> as far as the JIT is concerned.

Back to History