Closed Bug 1864209 Opened 2 years ago Closed 2 years ago

Experimentation with a MIR-level inliner for wasm

Categories

(Core :: JavaScript: WebAssembly, enhancement, P2)

enhancement

Tracking

()

RESOLVED WONTFIX

People

(Reporter: jseward, Assigned: jseward)

References

Details

Attachments

(3 files, 4 obsolete files)

Let's do some experimentation to assess the difficulties in
building a MIR-level inliner that can be used for wasm code.

Attached patch bug1864209-inliner.diff-5 (obsolete) — — Splinter Review

Initial code for supporting serialize/deserialize classes. Also, top level
coordination of compilation, enough to make testing of the inlining feasible.

Severity: -- → N/A
Priority: -- → P2
Attached patch bug1864209-inliner.diff-6 (obsolete) — — Splinter Review

With classes Serializer/Deserializer tidied up.

Attachment #9363061 - Attachment is obsolete: true
Attached patch bug1864209-inliner.diff-22 (obsolete) — — Splinter Review

With redesigned serialization library ({Se,Des}erializer2), and further
integration with MIR. WIP backup, unusable for anything as-is.

Attachment #9363441 - Attachment is obsolete: true
Attached patch bug1864209-inliner.diff-28 (obsolete) — — Splinter Review

Is able to round-trip (serialize and deserialize) some simple
MIR graphs resulting from wasm inputs. Hence it covers most
of the heavy lifting for MIR generic framework stuff
(MIRGraph, MBasicBlock, MPhi, MUse)
and for Vector, FixedList, InlineList, InlineForwardsList
as well as a handful of specific MInstructions (parameter,
call, compare, test, goto, add/sub/mul/div/shl/shr, return)
needed for the test cases shown in comment 5.

Attachment #9365390 - Attachment is obsolete: true
Attached file badness124.js —

Test case for the patch in comment 4. Run with
IONFLAGS=dump-mir-expr ./dist/bin/js --no-threads --no-ion /path/to/badness124.js
See comment 6 for resulting MIR.

Round-trippable MIR for the test case in comment 5
as processed using the patch in comment 4.

Marginally cleaned up version of comment 4 patch.
Applies against m-c 684483:5d6699b34edc.

Attachment #9365566 - Attachment is obsolete: true
See Also: → 1868521

Julian, do you want this still open?

Flags: needinfo?(jseward)

Closing as WONTFIX, since it seems like this isn't a road we plan to travel
along any time soon. The scheme under development in bug 1868521 seems more
promising.

Status: NEW → RESOLVED
Closed: 2 years ago
Flags: needinfo?(jseward)
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: