Compare Revisions

WebIDL bindings

Change Revisions

Revision 349951:

Revision 349951 by Bzbarsky on

Revision 350061:

Revision 350061 by Bzbarsky on

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

Revision 349951
Revision 350061
nn706    <h3 id=".5BPure.5D">
707      <code>[Pure]</code>
708    </h3>
709    <p>
710      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
 >ters are executed.&nbsp; This allows the JIT to perform loop-hois
 >ting and common subexpression elimination on the return values of
 > these attributes in some cases.&nbsp; Note that side-effects inc
 >lude throwing exceptions, so any attribute that has the <code>[Th
 >rows]</code> or <code>[GetterThrows]</code> annotation cannot be 
 >marked <code>[Pure]</code>.
711    </p>
t710      Used to flag readonly attributes that always return the samt716      Used to flag readonly attributes that could have been annot
>e value.&nbsp; This allows the JIT to perform loop-hoisting and c>ated with <code>[Pure]</code> and also always return the same val
>ommon subexpression elimination on the return values of these att>ue.&nbsp; This allows the JIT to do even more aggressive optimiza
>ributes.&nbsp; This should only be used when it's absolutely guar>tion of getters for such attributes.&nbsp; This should only be us
>anteed that the return value of the attribute getter will always >ed when it's absolutely guaranteed that the return value of the a
>be the same from the JS engine's point of view.>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
 >ar as the JIT is concerned.

Back to History