Index: third_party/minicrt/memory.cc |
diff --git a/third_party/minicrt/memory.cc b/third_party/minicrt/memory.cc |
deleted file mode 100644 |
index 5509bcd7153997102a4ea393dd2de6aa0d636d03..0000000000000000000000000000000000000000 |
--- a/third_party/minicrt/memory.cc |
+++ /dev/null |
@@ -1,100 +0,0 @@ |
- |
-#include "libctiny.h" |
-#include <windows.h> |
-#include <errno.h> |
-#include "memory.h" |
- |
-// memmove is defined first so it will use the intrinsic memcpy |
-void * __cdecl memmove(void * dst, const void * src, size_t count) { |
- void * ret = dst; |
- |
- if (dst <= src || (char *)dst >= ((char *)src + count)) { |
- // Non-Overlapping Buffers - copy from lower addresses to higher addresses |
- // saves 500 bytes of 1.4MB in uncompressed setup.exe, worth it? |
- memcpy(dst, src, count); |
- // while (count--) { |
- // *(char *)dst = *(char *)src; |
- // dst = (char *)dst + 1; |
- // src = (char *)src + 1; |
- // } |
- } |
- else { |
- // Overlapping Buffers - copy from higher addresses to lower addresses |
- dst = (char *)dst + count - 1; |
- src = (char *)src + count - 1; |
- |
- while (count--) { |
- *(char *)dst = *(char *)src; |
- dst = (char *)dst - 1; |
- src = (char *)src - 1; |
- } |
- } |
- |
- return(ret); |
-} |
- |
-// Turn off compiler intrinsics so that we can define these functions |
-#pragma function(memcmp, memcpy, memset) |
- |
-int __cdecl memcmp(const void * buf1, const void * buf2, size_t count) { |
- if (!count) |
- return(0); |
- while (--count && *(char *)buf1 == *(char *)buf2) { |
- buf1 = (char *)buf1 + 1; |
- buf2 = (char *)buf2 + 1; |
- } |
- return( *((unsigned char *)buf1) - *((unsigned char *)buf2) ); |
-} |
- |
-void * __cdecl memcpy(void * dst, const void * src, size_t count) { |
- void * ret = dst; |
- // copy from lower addresses to higher addresses |
- while (count--) { |
- *(char *)dst = *(char *)src; |
- dst = (char *)dst + 1; |
- src = (char *)src + 1; |
- } |
- return(ret); |
-} |
- |
-void * __cdecl memset(void *dst, int val, size_t count) { |
- void *start = dst; |
- while (count--) { |
- *(char *)dst = (char)val; |
- dst = (char *)dst + 1; |
- } |
- return(start); |
-} |
- |
-errno_t __cdecl memmove_s(void* dst, |
- size_t size_in_bytes, |
- const void* src, |
- size_t count) { |
- if (count == 0) { |
- return 0; |
- } |
- |
- if (!dst) return EINVAL; |
- if (!src) return EINVAL; |
- if (size_in_bytes < count) return ERANGE; |
- |
- memmove(dst, src, count); |
- return 0; |
-} |
- |
-errno_t __cdecl memcpy_s(void *dst, |
- size_t size_in_bytes, |
- const void *src, |
- size_t count) { |
- if (count == 0) { |
- return 0; |
- } |
- |
- if (!dst) return EINVAL; |
- if (!src) return EINVAL; |
- if (size_in_bytes < count) return ERANGE; |
- |
- memcpy(dst, src, count); |
- return 0; |
-} |
- |