aboutsummaryrefslogtreecommitdiff
path: root/base/runtime/procs.odin
diff options
context:
space:
mode:
Diffstat (limited to 'base/runtime/procs.odin')
-rw-r--r--base/runtime/procs.odin11
1 files changed, 11 insertions, 0 deletions
diff --git a/base/runtime/procs.odin b/base/runtime/procs.odin
index 454574c35..d9422b6a2 100644
--- a/base/runtime/procs.odin
+++ b/base/runtime/procs.odin
@@ -25,6 +25,17 @@ when ODIN_NO_CRT && ODIN_OS == .Windows {
RtlMoveMemory(dst, src, len)
return dst
}
+} else when ODIN_OS == .Orca {
+ memset :: proc "c" (ptr: rawptr, val: i32, len: int) -> rawptr {
+ if ptr != nil && len != 0 {
+ b := byte(val)
+ p := ([^]byte)(ptr)
+ for i := 0; i < len; i += 1 {
+ p[i] = b
+ }
+ }
+ return ptr
+ }
} else when ODIN_NO_CRT || (ODIN_ARCH == .wasm32 || ODIN_ARCH == .wasm64p32) {
@(link_name="memset", linkage="strong", require)
memset :: proc "c" (ptr: rawptr, val: i32, len: int) -> rawptr {