Closed Bug 1710140 Opened 1 month ago Closed 1 month ago

Clean up inlined FunCall/FunApply bailout code


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




90 Branch
Tracking Status
firefox90 --- fixed


(Reporter: iain, Assigned: iain)



(1 file)

Jan pointed out in #warpbuilder that some of the FunCall/FunApply bailout code was missing code coverage.

FunCall is missing a test for inlining with no arguments. The FunApply code is just dead; we optimize FunApply into a direct call to the callee in some cases, but we no longer support inlining the callee. (Ion supported inlining only in the case of foo.apply({}, arguments) inside an already inlined function, where we knew the exact contents of arguments.) We can clean it up.

While removing dead code I accidentally broke getters and setters, and noticed that only setters currently have coverage (ion/bug765454.js), so I'm adding a testcase for bailing out inlined getters as well.

Driveby: I've had a local patch floating around for a while to tweak trial inlining jitspew, but I've been too lazy to open a bug and land it; this is just related enough to justify folding it in.

Pushed by
Improve test coverage of inlined bailout code r=jandem
Closed: 1 month ago
Resolution: --- → FIXED
Target Milestone: --- → 90 Branch
You need to log in before you can comment on or make changes to this bug.