1.33.0[−][src]Module core::arch::wasm32
Platform-specific intrinsics for the wasm32
platform.
See the module documentation for more details.
Structs
v128 | [ Experimental ] [WebAssembly ] WASM-specific 128-bit wide SIMD vector type |
Functions
memory_grow | [ WebAssembly ] Corresponding intrinsic to wasm's |
memory_size | [ WebAssembly ] Corresponding intrinsic to wasm's |
atomic_notify⚠ | [ Experimental ] [WebAssembly ] Corresponding intrinsic to wasm's |
f32x4_splat | [ Experimental ] [WebAssembly ] Create vector with identical lanes |
f32x4_extract_lane⚠ | [ Experimental ] [WebAssembly ] Extract lane from a 128-bit vector interpreted as 4 packed f32 numbers. |
f32x4_replace_lane⚠ | [ Experimental ] [WebAssembly ] Replace a lane from a 128-bit vector interpreted as 4 packed f32 numbers. |
f32x4_eq | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit floating point numbers. |
f32x4_ne | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit floating point numbers. |
f32x4_lt | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit floating point numbers. |
f32x4_gt | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit floating point numbers. |
f32x4_le | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit floating point numbers. |
f32x4_ge | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit floating point numbers. |
f32x4_abs | [ Experimental ] [WebAssembly ] Calculates the absolute value of each lane of a 128-bit vector interpreted as four 32-bit floating point numbers. |
f32x4_neg | [ Experimental ] [WebAssembly ] Negates each lane of a 128-bit vector interpreted as four 32-bit floating point numbers. |
f32x4_sqrt | [ Experimental ] [WebAssembly ] Calculates the square root of each lane of a 128-bit vector interpreted as four 32-bit floating point numbers. |
f32x4_add | [ Experimental ] [WebAssembly ] Adds pairwise lanes of two 128-bit vectors interpreted as four 32-bit floating point numbers. |
f32x4_sub | [ Experimental ] [WebAssembly ] Subtracts pairwise lanes of two 128-bit vectors interpreted as four 32-bit floating point numbers. |
f32x4_mul | [ Experimental ] [WebAssembly ] Multiplies pairwise lanes of two 128-bit vectors interpreted as four 32-bit floating point numbers. |
f32x4_div | [ Experimental ] [WebAssembly ] Divides pairwise lanes of two 128-bit vectors interpreted as four 32-bit floating point numbers. |
f32x4_min | [ Experimental ] [WebAssembly ] Calculates the minimum of pairwise lanes of two 128-bit vectors interpreted as four 32-bit floating point numbers. |
f32x4_max | [ Experimental ] [WebAssembly ] Calculates the maximum of pairwise lanes of two 128-bit vectors interpreted as four 32-bit floating point numbers. |
f32x4_convert_s_i32x4 | [ Experimental ] [WebAssembly ] Converts a 128-bit vector interpreted as four 32-bit signed integers into a 128-bit vector of four 32-bit floating point numbers. |
f32x4_convert_u_i32x4 | [ Experimental ] [WebAssembly ] Converts a 128-bit vector interpreted as four 32-bit unsigned integers into a 128-bit vector of four 32-bit floating point numbers. |
f64x2_splat | [ Experimental ] [WebAssembly ] Create vector with identical lanes |
f64x2_extract_lane⚠ | [ Experimental ] [WebAssembly ] Extract lane from a 128-bit vector interpreted as 2 packed f64 numbers. |
f64x2_replace_lane⚠ | [ Experimental ] [WebAssembly ] Replace a lane from a 128-bit vector interpreted as 2 packed f64 numbers. |
f64x2_eq | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 2 sixty-four-bit floating point numbers. |
f64x2_ne | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 2 sixty-four-bit floating point numbers. |
f64x2_lt | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 2 sixty-four-bit floating point numbers. |
f64x2_gt | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 2 sixty-four-bit floating point numbers. |
f64x2_le | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 2 sixty-four-bit floating point numbers. |
f64x2_ge | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 2 sixty-four-bit floating point numbers. |
f64x2_abs | [ Experimental ] [WebAssembly ] Calculates the absolute value of each lane of a 128-bit vector interpreted as two 64-bit floating point numbers. |
f64x2_neg | [ Experimental ] [WebAssembly ] Negates each lane of a 128-bit vector interpreted as two 64-bit floating point numbers. |
f64x2_sqrt | [ Experimental ] [WebAssembly ] Calculates the square root of each lane of a 128-bit vector interpreted as two 64-bit floating point numbers. |
f64x2_add | [ Experimental ] [WebAssembly ] Adds pairwise lanes of two 128-bit vectors interpreted as two 64-bit floating point numbers. |
f64x2_sub | [ Experimental ] [WebAssembly ] Subtracts pairwise lanes of two 128-bit vectors interpreted as two 64-bit floating point numbers. |
f64x2_mul | [ Experimental ] [WebAssembly ] Multiplies pairwise lanes of two 128-bit vectors interpreted as two 64-bit floating point numbers. |
f64x2_div | [ Experimental ] [WebAssembly ] Divides pairwise lanes of two 128-bit vectors interpreted as two 64-bit floating point numbers. |
f64x2_min | [ Experimental ] [WebAssembly ] Calculates the minimum of pairwise lanes of two 128-bit vectors interpreted as two 64-bit floating point numbers. |
f64x2_max | [ Experimental ] [WebAssembly ] Calculates the maximum of pairwise lanes of two 128-bit vectors interpreted as two 64-bit floating point numbers. |
f64x2_convert_s_i64x2 | [ Experimental ] [WebAssembly ] Converts a 128-bit vector interpreted as two 64-bit signed integers into a 128-bit vector of two 64-bit floating point numbers. |
f64x2_convert_u_i64x2 | [ Experimental ] [WebAssembly ] Converts a 128-bit vector interpreted as two 64-bit unsigned integers into a 128-bit vector of two 64-bit floating point numbers. |
i32_atomic_wait⚠ | [ Experimental ] [WebAssembly ] Corresponding intrinsic to wasm's |
i64_atomic_wait⚠ | [ Experimental ] [WebAssembly ] Corresponding intrinsic to wasm's |
i16x8_splat | [ Experimental ] [WebAssembly ] Create vector with identical lanes |
i16x8_extract_lane⚠ | [ Experimental ] [WebAssembly ] Extract lane from a 128-bit vector interpreted as 8 packed i16 numbers. |
i16x8_replace_lane⚠ | [ Experimental ] [WebAssembly ] Replace a lane from a 128-bit vector interpreted as 8 packed i16 numbers. |
i16x8_eq | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 8 sixteen-bit integers. |
i16x8_ne | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 8 sixteen-bit integers. |
i16x8_lt_s | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 8 sixteen-bit signed integers. |
i16x8_lt_u | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 8 sixteen-bit unsigned integers. |
i16x8_gt_s | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 8 sixteen-bit signed integers. |
i16x8_gt_u | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 8 sixteen-bit unsigned integers. |
i16x8_le_s | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 8 sixteen-bit signed integers. |
i16x8_le_u | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 8 sixteen-bit unsigned integers. |
i16x8_ge_s | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 8 sixteen-bit signed integers. |
i16x8_ge_u | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 8 sixteen-bit unsigned integers. |
i16x8_neg | [ Experimental ] [WebAssembly ] Negates a 128-bit vectors intepreted as eight 16-bit signed integers |
i16x8_any_true | [ Experimental ] [WebAssembly ] Returns 1 if any lane is nonzero or 0 if all lanes are zero. |
i16x8_all_true | [ Experimental ] [WebAssembly ] Returns 1 if all lanes are nonzero or 0 if any lane is nonzero. |
i16x8_shl | [ Experimental ] [WebAssembly ] Shifts each lane to the left by the specified number of bits. |
i16x8_shr_s | [ Experimental ] [WebAssembly ] Shifts each lane to the right by the specified number of bits, sign extending. |
i16x8_shr_u | [ Experimental ] [WebAssembly ] Shifts each lane to the right by the specified number of bits, shifting in zeros. |
i16x8_add | [ Experimental ] [WebAssembly ] Adds two 128-bit vectors as if they were two packed eight 16-bit integers. |
i16x8_add_saturate_s | [ Experimental ] [WebAssembly ] Adds two 128-bit vectors as if they were two packed eight 16-bit signed
integers, saturating on overflow to |
i16x8_add_saturate_u | [ Experimental ] [WebAssembly ] Adds two 128-bit vectors as if they were two packed eight 16-bit unsigned
integers, saturating on overflow to |
i16x8_sub | [ Experimental ] [WebAssembly ] Subtracts two 128-bit vectors as if they were two packed eight 16-bit integers. |
i16x8_sub_saturate_s | [ Experimental ] [WebAssembly ] Subtracts two 128-bit vectors as if they were two packed eight 16-bit
signed integers, saturating on overflow to |
i16x8_sub_saturate_u | [ Experimental ] [WebAssembly ] Subtracts two 128-bit vectors as if they were two packed eight 16-bit unsigned integers, saturating on overflow to 0. |
i16x8_mul | [ Experimental ] [WebAssembly ] Multiplies two 128-bit vectors as if they were two packed eight 16-bit signed integers. |
i32x4_splat | [ Experimental ] [WebAssembly ] Create vector with identical lanes |
i32x4_extract_lane⚠ | [ Experimental ] [WebAssembly ] Extract lane from a 128-bit vector interpreted as 4 packed i32 numbers. |
i32x4_replace_lane⚠ | [ Experimental ] [WebAssembly ] Replace a lane from a 128-bit vector interpreted as 4 packed i32 numbers. |
i32x4_eq | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit integers. |
i32x4_ne | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit integers. |
i32x4_lt_s | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit signed integers. |
i32x4_lt_u | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit unsigned integers. |
i32x4_gt_s | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit signed integers. |
i32x4_gt_u | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit unsigned integers. |
i32x4_le_s | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit signed integers. |
i32x4_le_u | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit unsigned integers. |
i32x4_ge_s | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit signed integers. |
i32x4_ge_u | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 4 thirty-two-bit unsigned integers. |
i32x4_neg | [ Experimental ] [WebAssembly ] Negates a 128-bit vectors intepreted as four 32-bit signed integers |
i32x4_any_true | [ Experimental ] [WebAssembly ] Returns 1 if any lane is nonzero or 0 if all lanes are zero. |
i32x4_all_true | [ Experimental ] [WebAssembly ] Returns 1 if all lanes are nonzero or 0 if any lane is nonzero. |
i32x4_shl | [ Experimental ] [WebAssembly ] Shifts each lane to the left by the specified number of bits. |
i32x4_shr_s | [ Experimental ] [WebAssembly ] Shifts each lane to the right by the specified number of bits, sign extending. |
i32x4_shr_u | [ Experimental ] [WebAssembly ] Shifts each lane to the right by the specified number of bits, shifting in zeros. |
i32x4_add | [ Experimental ] [WebAssembly ] Adds two 128-bit vectors as if they were two packed four 32-bit integers. |
i32x4_sub | [ Experimental ] [WebAssembly ] Subtracts two 128-bit vectors as if they were two packed four 32-bit integers. |
i32x4_mul | [ Experimental ] [WebAssembly ] Multiplies two 128-bit vectors as if they were two packed four 32-bit signed integers. |
i32x4_trunc_s_f32x4_sat | [ Experimental ] [WebAssembly ] Converts a 128-bit vector interpreted as four 32-bit floating point numbers into a 128-bit vector of four 32-bit signed integers. |
i32x4_trunc_u_f32x4_sat | [ Experimental ] [WebAssembly ] Converts a 128-bit vector interpreted as four 32-bit floating point numbers into a 128-bit vector of four 32-bit unsigned integers. |
i64x2_splat | [ Experimental ] [WebAssembly ] Create vector with identical lanes |
i64x2_extract_lane⚠ | [ Experimental ] [WebAssembly ] Extract lane from a 128-bit vector interpreted as 2 packed i64 numbers. |
i64x2_replace_lane⚠ | [ Experimental ] [WebAssembly ] Replace a lane from a 128-bit vector interpreted as 2 packed i64 numbers. |
i64x2_neg | [ Experimental ] [WebAssembly ] Negates a 128-bit vectors intepreted as two 64-bit signed integers |
i64x2_any_true | [ Experimental ] [WebAssembly ] Returns 1 if any lane is nonzero or 0 if all lanes are zero. |
i64x2_all_true | [ Experimental ] [WebAssembly ] Returns 1 if all lanes are nonzero or 0 if any lane is nonzero. |
i64x2_shl | [ Experimental ] [WebAssembly ] Shifts each lane to the left by the specified number of bits. |
i64x2_shr_s | [ Experimental ] [WebAssembly ] Shifts each lane to the right by the specified number of bits, sign extending. |
i64x2_shr_u | [ Experimental ] [WebAssembly ] Shifts each lane to the right by the specified number of bits, shifting in zeros. |
i64x2_add | [ Experimental ] [WebAssembly ] Adds two 128-bit vectors as if they were two packed two 64-bit integers. |
i64x2_sub | [ Experimental ] [WebAssembly ] Subtracts two 128-bit vectors as if they were two packed two 64-bit integers. |
i64x2_trunc_s_f64x2_sat | [ Experimental ] [WebAssembly ] Converts a 128-bit vector interpreted as two 64-bit floating point numbers into a 128-bit vector of two 64-bit signed integers. |
i64x2_trunc_u_f64x2_sat | [ Experimental ] [WebAssembly ] Converts a 128-bit vector interpreted as two 64-bit floating point numbers into a 128-bit vector of two 64-bit unsigned integers. |
i8x16_splat | [ Experimental ] [WebAssembly ] Create vector with identical lanes |
i8x16_extract_lane⚠ | [ Experimental ] [WebAssembly ] Extract lane from a 128-bit vector interpreted as 16 packed i8 numbers. |
i8x16_replace_lane⚠ | [ Experimental ] [WebAssembly ] Replace a lane from a 128-bit vector interpreted as 16 packed i8 numbers. |
i8x16_eq | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 16 eight-bit integers. |
i8x16_ne | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 16 eight-bit integers. |
i8x16_lt_s | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 16 eight-bit signed integers. |
i8x16_lt_u | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 16 eight-bit unsigned integers. |
i8x16_gt_s | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 16 eight-bit signed integers. |
i8x16_gt_u | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 16 eight-bit unsigned integers. |
i8x16_le_s | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 16 eight-bit signed integers. |
i8x16_le_u | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 16 eight-bit unsigned integers. |
i8x16_ge_s | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 16 eight-bit signed integers. |
i8x16_ge_u | [ Experimental ] [WebAssembly ] Compares two 128-bit vectors as if they were two vectors of 16 eight-bit unsigned integers. |
i8x16_neg | [ Experimental ] [WebAssembly ] Negates a 128-bit vectors intepreted as sixteen 8-bit signed integers |
i8x16_any_true | [ Experimental ] [WebAssembly ] Returns 1 if any lane is nonzero or 0 if all lanes are zero. |
i8x16_all_true | [ Experimental ] [WebAssembly ] Returns 1 if all lanes are nonzero or 0 if any lane is nonzero. |
i8x16_shl | [ Experimental ] [WebAssembly ] Shifts each lane to the left by the specified number of bits. |
i8x16_shr_s | [ Experimental ] [WebAssembly ] Shifts each lane to the right by the specified number of bits, sign extending. |
i8x16_shr_u | [ Experimental ] [WebAssembly ] Shifts each lane to the right by the specified number of bits, shifting in zeros. |
i8x16_add | [ Experimental ] [WebAssembly ] Adds two 128-bit vectors as if they were two packed sixteen 8-bit integers. |
i8x16_add_saturate_s | [ Experimental ] [WebAssembly ] Adds two 128-bit vectors as if they were two packed sixteen 8-bit signed
integers, saturating on overflow to |
i8x16_add_saturate_u | [ Experimental ] [WebAssembly ] Adds two 128-bit vectors as if they were two packed sixteen 8-bit unsigned
integers, saturating on overflow to |
i8x16_sub | [ Experimental ] [WebAssembly ] Subtracts two 128-bit vectors as if they were two packed sixteen 8-bit integers. |
i8x16_sub_saturate_s | [ Experimental ] [WebAssembly ] Subtracts two 128-bit vectors as if they were two packed sixteen 8-bit
signed integers, saturating on overflow to |
i8x16_sub_saturate_u | [ Experimental ] [WebAssembly ] Subtracts two 128-bit vectors as if they were two packed sixteen 8-bit unsigned integers, saturating on overflow to 0. |
i8x16_mul | [ Experimental ] [WebAssembly ] Multiplies two 128-bit vectors as if they were two packed sixteen 8-bit signed integers. |
unreachable⚠ | [ Experimental ] [WebAssembly ] Generates the trap instruction |
v128_load⚠ | [ Experimental ] [WebAssembly ] Load a |
v128_store⚠ | [ Experimental ] [WebAssembly ] Store a |
v128_const | [ Experimental ] [WebAssembly ] Materialize a constant SIMD value from the immediate operands. |
v128_not | [ Experimental ] [WebAssembly ] Flips each bit of the 128-bit input vector. |
v128_and | [ Experimental ] [WebAssembly ] Performs a bitwise and of the two input 128-bit vectors, returning the resulting vector. |
v128_or | [ Experimental ] [WebAssembly ] Performs a bitwise or of the two input 128-bit vectors, returning the resulting vector. |
v128_xor | [ Experimental ] [WebAssembly ] Performs a bitwise xor of the two input 128-bit vectors, returning the resulting vector. |
v128_bitselect | [ Experimental ] [WebAssembly ] Use the bitmask in |