[LoongArch64] Part-5:add loongarch support in some files for LoongArch64. (#21769)
[mono-project.git] / mono / utils / memfuncs.h
blob5af5356f6ca8941e96fe0a69e07bfacce341b32c
1 /**
2 * \file
3 * Our own bzero/memmove.
5 * Copyright (C) 2015 Xamarin Inc
7 * Licensed under the MIT license. See LICENSE file in the project root for full license information.
8 */
10 #ifndef __MONO_UTILS_MEMFUNCS_H__
11 #define __MONO_UTILS_MEMFUNCS_H__
13 #include <stdlib.h>
14 #include <glib.h>
17 These functions must be used when it's possible that either destination is not
18 word aligned or size is not a multiple of word size.
20 void mono_gc_bzero_atomic (void *dest, size_t size);
21 void mono_gc_bzero_aligned (void *dest, size_t size);
22 void mono_gc_memmove_atomic (void *dest, const void *src, size_t size);
23 void mono_gc_memmove_aligned (void *dest, const void *src, size_t size);
24 guint64 mono_determine_physical_ram_size (void);
25 guint64 mono_determine_physical_ram_available_size (void);
26 #if HAVE_CGROUP_SUPPORT
27 size_t mono_get_restricted_memory_limit(void);
28 gboolean mono_get_memory_used(size_t *);
29 size_t mono_get_memory_avail(void);
30 #endif
32 #endif