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_low_i8x16_u: Wasm SIMD Rechenanweisung

Die extmul_low_i8x16_u SIMD Rechenanweisung nimmt die Lanes 0–7 zweier unsigned v128 i8x16 Werteinterpretationen, multipliziert die Werte in den entsprechenden Lanes und gibt das Ergebnis dieser Operationen in einer i16x8 Werteinterpretation aus.

Probieren Sie es aus

(module
  (import "console" "log" (func $log (param i32)))
  (func $main
    v128.const i8x16 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3
    v128.const i8x16 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5

    i16x8.extmul_low_i8x16_u
    i16x8.extract_lane_s 7
    call $log ;; log the result
  )
  (start $main)
)
WebAssembly.instantiateStreaming(fetch("{%wasm-url%}"), { console });

Im obigen Beispiel werden die Lanes 0–7 der beiden i8x16 Eingabewerte miteinander multipliziert, und die Produkte als i16x8 ausgegeben. Lane 0 des ersten Eingangs wird mit Lane 0 des zweiten Eingangs multipliziert, und das Produkt wird zu Lane 0 der Ausgabe, und so weiter. Als Ergebnis enthält jede Lane der Ausgabe den Wert 8 (2 * 4).

Die extmul_low_i8x16_u Anweisung ist ein leistungsfähigeres Pendant zum Übergeben der Ergebnisse von zwei extend_low_i8x16_u Anweisungen in eine mul Anweisung.

Mit anderen Worten:

wat
(i16x8.extmul_low_i8x16_u
  (input1)
  (input2)
)

ist äquivalent zu

wat
(i16x8.mul
  (i16x8.extend_low_i8x16_u
    (input1)
  )
  (i16x8.extend_low_i8x16_u
    (input2)
  )
)

Syntax

i16x8.extmul_low_i8x16_u
i16x8.extmul_low_i8x16_u

Die i16x8.extmul_low_i8x16_u Anweisung.

Typ

[input1, input2] -> [output]
input1

Die erste v128 i8x16 Werteinterpretation.

input2

Die zweite v128 i8x16 Werteinterpretation.

output

Die Ausgabe v128 i16x8 Werteinterpretation.

Binäre Codierung

Anweisung Binärformat Beispieltext => Binär
i16x8.extmul_low_i8x16_u 0xfd 158:u32 i16x8.extmul_low_i8x16_u => 0xfd 0x9e 0x01

Spezifikationen

Diese Funktion scheint in keiner Spezifikation definiert zu sein.

Browser-Kompatibilität

Siehe auch