replace_lane: Wasm SIMD Umwandlungsanweisung
Die replace_lane SIMD Umwandlungsanweisung ersetzt die angegebene Lane einer v128 Wertinterpretation mit einem neuen Wert und gibt die resultierende v128 Wertinterpretation zurück.
Probieren Sie es aus
(module
(import "console" "log" (func $log (param f64)))
(func $main
v128.const f64x2 1200000 3456789
f64.const 777777
f64x2.replace_lane 1
f64x2.extract_lane 1
call $log ;; log the result
)
(start $main)
)
WebAssembly.instantiateStreaming(fetch("{%wasm-url%}"), { console });
Syntax
value_type.replace_lane index
value_type-
Der Typ des Wertes, auf dem die Anweisung ausgeführt wird. Die folgenden
v128Wertinterpretationen unterstützenreplace_lane:i8x16i16x8i32x4i64x2f32x4f64x2
replace_lane-
Die
replace_laneAnweisung. Sie muss immer nach demvalue_typeund einem Punkt (.) eingeschlossen werden. index-
Der Index der Lane, die Sie ersetzen möchten.
Typ
[input, replace_value] -> [output]
input-
Die Eingabe
v128Wertinterpretation. replace_value-
Der Wert, mit dem Sie die Lane ersetzen möchten.
output-
Die Ausgabe
v128Wertinterpretation.
Binäre Kodierung
| Anweisung | Binärformat | Beispieltext => binär |
|---|---|---|
i8x16.replace_lane |
0xfd 23:u32 l:laneidx |
i8x16.replace_lane 3 => 0xfd 0x17 0x03 |
i16x8.replace_lane |
0xfd 26:u32 l:laneidx |
i16x8.replace_lane 3 => 0xfd 0x1a 0x03 |
i32x4.replace_lane |
0xfd 28:u32 l:laneidx |
i32x4.replace_lane 3 => 0xfd 0x1c 0x03 |
i64x2.replace_lane |
0xfd 30:u32 l:laneidx |
i64x2.replace_lane 1 => 0xfd 0x1e 0x01 |
f32x4.replace_lane |
0xfd 32:u32 l:laneidx |
f32x4.replace_lane 3 => 0xfd 0x20 0x03 |
f64x2.replace_lane |
0xfd 34:u32 l:laneidx |
f64x2.replace_lane 1 => 0xfd 0x22 0x01 |