From f6c7a0c9b8086f43f958f69b2ad3e960e408bc57 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Wed, 13 May 2020 23:51:51 +0100 Subject: [PATCH] Fix -llvm-api `memset` "bug" --- core/runtime/internal.odin | 26 +++++++------------------- 1 file changed, 7 insertions(+), 19 deletions(-) diff --git a/core/runtime/internal.odin b/core/runtime/internal.odin index 80094f28a..9788c0633 100644 --- a/core/runtime/internal.odin +++ b/core/runtime/internal.odin @@ -70,25 +70,13 @@ align_forward_uintptr :: inline proc(ptr, align: uintptr) -> uintptr { mem_zero :: proc "contextless" (data: rawptr, len: int) -> rawptr { if data == nil do return nil; if len < 0 do return data; - when !#defined(memset) { - foreign _ { - when ODIN_USE_LLVM_API { - when size_of(rawptr) == 8 { - @(link_name="llvm.memset.p0i8.i64") - memset :: proc(dst: rawptr, val: byte, len: int, is_volatile: bool = false) ---; - } else { - @(link_name="llvm.memset.p0i8.i32") - memset :: proc(dst: rawptr, val: byte, len: int, is_volatile: bool = false) ---; - } - } else { - when size_of(rawptr) == 8 { - @(link_name="llvm.memset.p0i8.i64") - memset :: proc(dst: rawptr, val: byte, len: int, align: i32 = 1, is_volatile: bool = false) ---; - } else { - @(link_name="llvm.memset.p0i8.i32") - memset :: proc(dst: rawptr, val: byte, len: int, align: i32 = 1, is_volatile: bool = false) ---; - } - } + when !ODIN_USE_LLVM_API do foreign _ { + when size_of(rawptr) == 8 { + @(link_name="llvm.memset.p0i8.i64") + memset :: proc(dst: rawptr, val: byte, len: int, align: i32 = 1, is_volatile: bool = false) ---; + } else { + @(link_name="llvm.memset.p0i8.i32") + memset :: proc(dst: rawptr, val: byte, len: int, align: i32 = 1, is_volatile: bool = false) ---; } } memset(data, 0, len);