Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
emscripten-core
GitHub Repository: emscripten-core/emscripten
Path: blob/main/system/lib/libc/emscripten_memset.c
6162 views
1
#include "emscripten_internal.h" // for emscripten_memset_big
2
3
#if defined(__has_feature) && __has_feature(address_sanitizer)
4
// build an uninstrumented version of memset
5
__attribute__((no_sanitize("address"))) void *__musl_memset(void *str, int c, size_t n);
6
__attribute__((no_sanitize("address"))) void *__memset(void *str, int c, size_t n);
7
#endif
8
9
__attribute__((__weak__)) void *__musl_memset(void *str, int c, size_t n);
10
__attribute__((__weak__)) void *__memset(void *str, int c, size_t n);
11
12
#if defined(EMSCRIPTEN_OPTIMIZE_FOR_OZ)
13
14
void *__memset(void *str, int c, size_t n) {
15
return _emscripten_memset_bulkmem(str, c, n);
16
}
17
18
#else
19
20
#define memset __memset
21
#include "musl/src/string/memset.c"
22
#undef memset
23
24
#endif
25
26
weak_alias(__memset, emscripten_builtin_memset);
27
weak_alias(__memset, memset);
28
29