Closed Bug 1385278 Opened 7 years ago Closed 7 years ago

Move some functions in CacheIR from Ion

Categories

(Core :: JavaScript Engine: JIT, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla57
Tracking Status
firefox57 --- fixed

People

(Reporter: evilpie, Assigned: evilpie)

References

(Blocks 1 open bug)

Details

Attachments

(4 files, 1 obsolete file)

The old IonCaches are gone, so we can move some of those functions into CacheIR.cpp
Attachment #8891349 - Flags: review?(jdemooij)
Comment on attachment 8891349 [details] [diff] [review]
Move IsCacheable to CacheIR from Ion

Review of attachment 8891349 [details] [diff] [review]:
-----------------------------------------------------------------

Thanks for doing this. We've come a long way :)

(See also bug 1340153.)

::: js/src/jit/CacheIR.cpp
@@ +300,5 @@
>  }
>  
> +// Note: This differs from IsCacheableProtoChain in BaselineIC.cpp in that
> +// Ion caches can deal with objects on the proto chain that have uncacheable
> +// prototypes.

Please remove this comment, there's no longer an IsCacheableProtoChain in BaselineIC.cpp \o/

@@ +361,5 @@
> +    // instead of the WindowProxy.
> +    return !IsWindow(obj);
> +}
> +
> +bool

Nit: static bool
Attachment #8891349 - Flags: review?(jdemooij) → review+
Keywords: leave-open
Pushed by evilpies@gmail.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/06c9ca99d461
Move IsCacheable* functions to CacheIR from Ion. r=jandem
Attachment #8901990 - Flags: review?(jdemooij)
Comment on attachment 8901990 [details] [diff] [review]
Move StoreDenseElement to CacheIR from Ion

Review of attachment 8901990 [details] [diff] [review]:
-----------------------------------------------------------------

\o/
Attachment #8901990 - Flags: review?(jdemooij) → review+
Pushed by evilpies@gmail.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/35a1fe8f201b
Move StoreDenseElement to CacheIR from Ion. r=jandem
Almost done \o/. CodeLocationJump::repoint, CodeLocationLabel::repoint and CodeOffsetJump::fixup should probably be moved to a new Assembler-shared.cpp file.
Attachment #8905628 - Flags: review?(jdemooij)
Comment on attachment 8905628 [details] [diff] [review]
Move GetReturnAddress into IonCacheIRCompiler

Review of attachment 8905628 [details] [diff] [review]:
-----------------------------------------------------------------

Nice! 

Moving the remaining functions to MacroAssembler.cpp or Assembler-shared.cpp SGTM.
Attachment #8905628 - Flags: review?(jdemooij) → review+
Pushed by evilpies@gmail.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/ec521bf6357c
Move GetReturnAddress into IonCacheIRCompiler. r=jandem
Keywords: leave-open
Comment on attachment 8906273 [details] [diff] [review]
Move the rest of IonCaches.h to Assembler-shared.h

Review of attachment 8906273 [details] [diff] [review]:
-----------------------------------------------------------------

Sweet!
Attachment #8906273 - Flags: review?(jdemooij) → review+
Pushed by evilpies@gmail.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/ea4ebbcd0022
Move the rest of IonCaches.h to Assembler-shared.h. r=jandem
https://hg.mozilla.org/mozilla-central/rev/ea4ebbcd0022
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla57
You need to log in before you can comment on or make changes to this bug.