Module Int32x4.Raw

include module type of struct include Ocaml_simd_sse.Load_store.Raw_Int32x4 end
val load_low : nativeint -> int32x4 @@ portable

Load the lower 4-byte lane from an arbitrary address encoded as a nativeint#. \ The upper lanes are undefined.

val load_low_zero_high : nativeint -> int32x4 @@ portable

Load the lower 4-byte lane from an arbitrary address encoded as a nativeint#. \ The upper lanes are zeroed.

val store_low : nativeint -> int32x4 -> unit @@ portable

Store the lower 4-byte lane to an arbitrary address encoded as a nativeint#.

val unaligned_load : nativeint -> int32x4 @@ portable

Load 16 bytes from an arbitrary address encoded as a nativeint#.

val unaligned_store : nativeint -> int32x4 -> unit @@ portable

Store 16 bytes to an arbitrary address encoded as a nativeint#.

val aligned_load : nativeint -> int32x4 @@ portable

Load 16 bytes from a 16-byte-aligned address encoded as a nativeint#. Does not validate alignment.

val aligned_store : nativeint -> int32x4 -> unit @@ portable

Store 16 bytes to a 16-byte-aligned address encoded as a nativeint#. Does not validate alignment.

val aligned_load_uncached : nativeint -> int32x4 @@ portable

Non-temporally load 16 bytes from a 16-byte-aligned address encoded as a nativeint#. Does not validate alignment. The address will not be cached.

val aligned_store_uncached : nativeint -> int32x4 -> unit @@ portable

Non-temporally store 16 bytes to a 16-byte-aligned address encoded as a nativeint#. Does not validate alignment. The address will not be cached.

val broadcast : nativeint -> int32x4 @@ portable

Load 4 bytes from an arbitrary address encoded as a nativeint# into all lanes.

val load_masked : nativeint -> mask:int32x4 -> int32x4 @@ portable

Load 16 bytes from an arbitrary address encoded as a nativeint# subject to a mask. If the upper bit of each 4-byte mask lane is zero, the corresponding output lane will be zeroed, and page faults/memory exceptions will not be generated.

val store_masked : nativeint -> int32x4 -> mask:int32x4 -> unit @@ portable

Store 16 bytes to an arbitrary address encoded as a nativeint# subject to a mask. If the upper bit of each 4-byte mask lane is zero, the corresponding input lane will not be written to memory, and page faults/memory exceptions will not be generated.