Closed Bug 1562602 Opened 4 months ago Closed 3 months ago

Fix some minor baseline interpreter issues

Categories

(Core :: JavaScript Engine: JIT, task, P1)

task

Tracking

()

RESOLVED FIXED
mozilla70
Tracking Status
firefox70 --- fixed

People

(Reporter: jandem, Assigned: jandem)

References

Details

Attachments

(5 files)

Patches for a few minor issues exposed by enabling for jit-tests on Try.

It needs to set resumePCinCurrentFrame_ to an address in the interpreter JitCode
instead of nullptr (or else the profiler's JitCodeMap lookup will assert).

This avoids overrecursion exceptions on testManyVars.js on Windows/Linux
(the C++ interpreter has heap-allocated stack frames so it can handle this
better).

Depends on D36468

This is process-wide state and storing it in JSContext/JSRuntime requires
callers to pass a context/runtime for no good reason. This simplifies the
next patch.

Storing this in JitOptions seemed nicer than adding new globals for this and
maybe in the future we will have a testing function/flag to toggle these
flags.

Depends on D36470

This is consistent with IsBaselineEnabled/IsIonEnabled and lets us handle the
JS_CODEGEN_NONE and no-floating-point-support cases the same way.

Depends on D36471

Priority: -- → P1
Pushed by jdemooij@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/6a0498d1ac61
part 1 - Fix JSJitProfilingFrameIterator::fixBaselineReturnAddress for interpreter frames. r=djvj
https://hg.mozilla.org/integration/autoland/rev/d598861b5d41
part 2 - Don't Baseline interpret scripts with a huge number of slots. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/8f67dc480b58
part 3 - Remove unused JSRuntime::jitSupportsSimd field and JSContext accessor for it. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/8cbfd166cb61
part 4 - Move jitSupportsFloatingPoint and jitSupportsUnalignedAccesses flags from JSRuntime to JitOptions. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/44bdb6882218
part 5 - Add IsBaselineInterpreterEnabled() and use it instead of checking the JitOption directly. r=tcampbell
You need to log in before you can comment on or make changes to this bug.