Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

extmul_high_i32x4_s: Wasm SIMD arithmetische Anweisung

Die extmul_high_i32x4_s SIMD arithmetische Anweisung nimmt die Lanes 2–3 von zwei vorzeichenbehafteten v128 i32x4 Wertinterpretationen, multipliziert die Werte in den entsprechenden Lanes und gibt das Ergebnis dieser Operationen in einer i64x2 Wertinterpretation aus.

Probieren Sie es aus

(module
  (import "console" "log" (func $log (param i64)))
  (func $main
    v128.const i32x4 25 25 50 50
    v128.const i32x4 20 20 40 40

    i64x2.extmul_high_i32x4_s
    i64x2.extract_lane 1
    call $log ;; log the result
  )
  (start $main)
)
WebAssembly.instantiateStreaming(fetch("{%wasm-url%}"), { console });

Im obigen Beispiel werden die Lanes 2–3 der zwei i32x4 Eingabewerte miteinander multipliziert und die Produkte als i64x2 ausgegeben. Lane 2 des ersten Eingabewerts wird mit Lane 2 des zweiten Eingabewerts multipliziert, und das Produkt wird zu Lane 0 der Ausgabe, und so weiter. Als Ergebnis enthält jede Lane der Ausgabe den Wert 2000 (50 * 40).

Die extmul_high_i32x4_s Anweisung ist ein leistungsfähigeres Äquivalent zur Übergabe der Ergebnisse von zwei extend_high_i32x4_s Anweisungen in eine mul Anweisung.

Anders ausgedrückt:

wat
(i64x2.extmul_high_i32x4_s
  (input1)
  (input2)
)

entspricht

wat
(i64x2.mul
  (i64x2.extend_high_i32x4_s
    (input1)
  )
  (i64x2.extend_high_i32x4_s
    (input2)
  )
)

Syntax

i64x2.extmul_high_i32x4_s
i64x2.extmul_high_i32x4_s

Die i64x2.extmul_high_i32x4_s Anweisung.

Typ

[input1, input2] -> [output]
input1

Die erste Eingabe v128 i32x4 Wertinterpretation.

input2

Die zweite Eingabe v128 i32x4 Wertinterpretation.

output

Die Ausgabe v128 i64x2 Wertinterpretation.

Binärcodierung

Anweisung Binärformat Beispieltext => binär
i64x2.extmul_high_i32x4_s 0xfd 221:u32 i64x2.extmul_high_i32x4_s => 0xfd 0xdd 0x01

Spezifikationen

Spezifikation
WebAssembly Core Specification
# vector-instructions%E2%91%A8

Browser-Kompatibilität