diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-11-19 09:36:24 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-11-19 09:36:24 +0100 |
| commit | 31439688ca75387b4cec4c28d609dafc13c464eb (patch) | |
| tree | 74cafe9b5590a211dd2c04226332065c706ff58a /dev/kernel/src/CRuntimeOverrides.cc | |
| parent | 4fdc70b676fbed322ba09bc7fb886f3b87245baa (diff) | |
| parent | 92a98b1b45192125562c5b90fc7d02317f94016e (diff) | |
Merge pull request #75 from nekernel-org/dev
feat: kernel: new CRuntimeOverrides file, and documentation
Diffstat (limited to 'dev/kernel/src/CRuntimeOverrides.cc')
| -rw-r--r-- | dev/kernel/src/CRuntimeOverrides.cc | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/dev/kernel/src/CRuntimeOverrides.cc b/dev/kernel/src/CRuntimeOverrides.cc new file mode 100644 index 00000000..49b1d49d --- /dev/null +++ b/dev/kernel/src/CRuntimeOverrides.cc @@ -0,0 +1,27 @@ +/* ------------------------------------------- + + Copyright (C) 2025, Amlal El Mahrouss, licensed under the Apache 2.0 license. + +------------------------------------------- */ + +#include <NeKit/Utils.h> + +using namespace Kernel; + +/// =========================================================== /// +/// @brief C Standard Library overrides. /// +/// =========================================================== /// + +EXTERN_C void* memset(void* dst, int c, long long unsigned int len) { + return Kernel::rt_set_memory_safe(dst, c, static_cast<Size>(len), static_cast<Size>(len)); +} + +EXTERN_C void* memcpy(void* dst, const void* src, long long unsigned int len) { + Kernel::rt_copy_memory_safe(const_cast<void*>(src), dst, static_cast<Size>(len), + static_cast<Size>(len)); + return dst; +} + +EXTERN_C Int32 strcmp(const char* a, const char* b) { + return Kernel::rt_string_cmp(a, b, rt_string_len(a)); +} |
