diff options
| author | andromeda <andromeda@bsd.my.domain> | 2026-10-19 13:37:35 -0400 |
|---|---|---|
| committer | andromeda <andromeda@bsd.my.domain> | 2026-10-19 13:37:35 -0400 |
| commit | 97d331175ae47aec3d0b990ada9754a9e4298e32 (patch) | |
| tree | 6b95823d67087725124a385f3b3860f8dd58304c /lib/uefi.c3l/src/exports.c3 | |
| parent | 07e96320de32c04b0de038ab8b1ece5724506235 (diff) | |
minimum that compiles
Diffstat (limited to 'lib/uefi.c3l/src/exports.c3')
| -rw-r--r-- | lib/uefi.c3l/src/exports.c3 | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/uefi.c3l/src/exports.c3 b/lib/uefi.c3l/src/exports.c3 index 3b337e3..332311c 100644 --- a/lib/uefi.c3l/src/exports.c3 +++ b/lib/uefi.c3l/src/exports.c3 @@ -188,6 +188,15 @@ fn void* memcpy(void* into, void* from, usz length) @export("memcpy") @nostrip return into; } +fn void* memmove(void* into, void* from, usz length) @export("memmove") @nostrip +{ + void* tmp = malloc(length); + memcpy(tmp, from, length); + memcpy(into, tmp, length); + free(tmp); + return into; +} + fn void memset( void* at, char value, @@ -204,4 +213,4 @@ fn void* realloc( ) @export("realloc") @nostrip => efi_system::efi_sys.realloc(pool, prev_len, new_len)!!; fn void free(void* pool) @export("free") @nostrip => efi_system::efi_sys.free(pool); -fn void? free_safe(void* pool) @export("free_safe") @nostrip => efi_system::efi_sys.free_safe(pool);
\ No newline at end of file +fn void? free_safe(void* pool) @export("free_safe") @nostrip => efi_system::efi_sys.free_safe(pool); |
