Closed Bug 1798970 Opened 2 years ago Closed 2 years ago

Add support for FMA3 instructions in Relaxed SIMD FMA instructions

Categories

(Core :: JavaScript: WebAssembly, enhancement)

enhancement

Tracking

()

RESOLVED FIXED
108 Branch
Tracking Status
firefox108 --- fixed

People

(Reporter: yury, Assigned: yury)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

FMA3 is added to Intel SIMD at the same time as AVX2. We currently don't test this CPU feature in the SM. To get expected performance FMA lowering expected to be (as described at https://github.com/WebAssembly/relaxed-simd/issues/27):

  • relaxed f32x4.fma = VFMADD231PS
  • relaxed f32x4.fnma = VFNMADD231PS
  • relaxed f64x2.fma = VFMADD231PD
  • relaxed f64x2.fnma = VFNMADD231PD
Assignee: nobody → ydelendik

Adds detection of FMA in Intel CPUs.

Use vfmadd231ps/d and vfnmadd231ps/d instructions by default if FMA is available. Pref'd on/off with --wasm-relaxed-simd setting.

Pushed by ydelendik@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/cc1111267bc8 Add support for FMA3 instructions in Relaxed SIMD. r=rhunt
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 108 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: