From a6c5143993e503b3892d41b7266aa450c03b8bd6 Mon Sep 17 00:00:00 2001 From: Jeroen van Rijn Date: Sun, 6 Mar 2022 14:46:20 +0100 Subject: [PATCH 1/2] [intrinsics] Add existing `unaligned_load`. --- core/intrinsics/intrinsics.odin | 1 + 1 file changed, 1 insertion(+) diff --git a/core/intrinsics/intrinsics.odin b/core/intrinsics/intrinsics.odin index 803b04d17..0196786ec 100644 --- a/core/intrinsics/intrinsics.odin +++ b/core/intrinsics/intrinsics.odin @@ -41,6 +41,7 @@ mem_copy_non_overlapping :: proc(dst, src: rawptr, len: int) --- mem_zero :: proc(ptr: rawptr, len: int) --- mem_zero_volatile :: proc(ptr: rawptr, len: int) --- +unaligned_load :: proc(ptr: ^$T) -> T --- fixed_point_mul :: proc(lhs, rhs: $T, #const scale: uint) -> T where type_is_integer(T) --- fixed_point_div :: proc(lhs, rhs: $T, #const scale: uint) -> T where type_is_integer(T) --- From deed20dea6114c6a15bccb83dc53855e560f4565 Mon Sep 17 00:00:00 2001 From: Jeroen van Rijn Date: Sun, 6 Mar 2022 14:53:06 +0100 Subject: [PATCH 2/2] [intrinsics] Add `unaligned_store`. --- core/intrinsics/intrinsics.odin | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/intrinsics/intrinsics.odin b/core/intrinsics/intrinsics.odin index 0196786ec..c3ef787bc 100644 --- a/core/intrinsics/intrinsics.odin +++ b/core/intrinsics/intrinsics.odin @@ -41,7 +41,8 @@ mem_copy_non_overlapping :: proc(dst, src: rawptr, len: int) --- mem_zero :: proc(ptr: rawptr, len: int) --- mem_zero_volatile :: proc(ptr: rawptr, len: int) --- -unaligned_load :: proc(ptr: ^$T) -> T --- +unaligned_load :: proc(src: ^$T) -> T --- +unaligned_store :: proc(dst: ^$T, val: T) -> T --- fixed_point_mul :: proc(lhs, rhs: $T, #const scale: uint) -> T where type_is_integer(T) --- fixed_point_div :: proc(lhs, rhs: $T, #const scale: uint) -> T where type_is_integer(T) ---