Closed Bug 1566332 Opened 3 months ago Closed 3 months ago

Make the Baseline JIT depend on the Baseline Interpreter

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)

It should be impossible to enable the Baseline JIT without the interpreter, similar to how Ion requires Baseline. Then we can simplify a number of things (bug 1566330, bug 1552154, some other things).

We can probably land this at the end of this week or so, when an emergency back out will become increasingly unlikely.

This is more symmetrical with baselineInterpreterWarmUpThreshold and the
baselineInterpreter/baselineJit options.

Depends on D38277

This unblocks clean up of Ion bailouts and Baseline because we can now assume
the interpreter is enabled.

Depends on D38278

If the script already has a BaselineScript or the Interpreter/JIT thresholds are the same,
we will immediately switch to Baseline JIT code at the same LOOPENTRY op. This should be
unlikely for most loops and the extra overhead for this case is negligible.

Depends on D38279

Priority: -- → P1
Pushed by jdemooij@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/87958a037098
part 1 - Add DefaultJitOptions::setEagerBaselineCompilation() and use it in a few places. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/699a49dc1d50
part 2 - Stop messing with JIT prefs in gdb unwind test. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/b3c6bd8fc4cd
part 3 - Rename JitOptions.baselineWarmUpThreshold to JitOptions.baselineJitWarmUpThreshold. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/56b33927fd49
part 4 - Make IsBaselineJitEnabled imply IsBaselineInterpreterEnabled. r=tcampbell
https://hg.mozilla.org/integration/autoland/rev/db5038b9b3d3
part 5 - Remove support for C++ interpreter -> Baseline JIT OSR, always enter Baseline Interpreter. r=tcampbell
Regressions: 1568080
Regressions: 1571388
You need to log in before you can comment on or make changes to this bug.