Closed Bug 1656834 Opened 5 years ago Closed 4 years ago

Wasm baseline: SIMD shuffle optimizations

Categories

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

enhancement

Tracking

()

RESOLVED INACTIVE

People

(Reporter: lth, Unassigned)

References

(Blocks 1 open bug)

Details

Virtually all of the machinery we need to implement the shuffle optimizations in the baseline compiler is already available, because it's not Ion-specific. (The exception is some of the code generator bits but we can work on that, easily; and some of the code may need to be lifted out of the Jit and into, say, wasm/WasmSIMD.cpp and generalized slightly.) Thus baseline massively pessimizes shuffle. Since Liftoff is starting to optimize shuffle, and it's not a big deal for us to do the same, we should do so too.

Blocks: wasm-simd
Assignee: lhansen → nobody
Status: ASSIGNED → NEW

Also on ARM64. This will entail generalizing the machinery that's now in x86-specific Ion code to a cross-architecture solution that also works for baseline. This still should be a modest amount of work, but the selection of optimizable patterns is somewhat different for ARM64: there are some new patterns to recognize, and the priority of the different patterns may be different due to different hardware support.

Hardware: x86_64 → All
Priority: P3 → P5
Summary: SIMD shuffle optimizations in baseline compiler → Wasm baseline: SIMD shuffle optimizations
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → INACTIVE
You need to log in before you can comment on or make changes to this bug.