少年修仙传客户端基础资源
hch
2024-04-01 d01413b00ef631ac20347716b23818b0b811f65f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
/**
 * \file
 * Architecture dependent parts of SGen.
 *
 * Copyright 2001-2003 Ximian, Inc
 * Copyright 2003-2010 Novell, Inc.
 * Copyright (C) 2012 Xamarin Inc
 *
 * Licensed under the MIT license. See LICENSE file in the project root for full license information.
 */
#ifndef __MONO_SGENARCHDEP_H__
#define __MONO_SGENARCHDEP_H__
 
#include <mono/utils/mono-context.h>
 
#if defined(MONO_CROSS_COMPILE)
 
#define REDZONE_SIZE    0
 
#elif defined(TARGET_X86)
 
#define REDZONE_SIZE    0
 
#ifndef MONO_ARCH_HAS_MONO_CONTEXT
#error 0
#endif
 
#elif defined(TARGET_AMD64)
 
#ifdef HOST_WIN32
/* The Windows x64 ABI defines no "red zone". The ABI states:
   "All memory beyond the current address of RSP is considered volatile" */
#define REDZONE_SIZE    0
#else
#define REDZONE_SIZE    128
#endif
 
#elif defined(TARGET_POWERPC)
 
#define REDZONE_SIZE    224
 
#elif defined(TARGET_ARM)
 
#define REDZONE_SIZE    0
 
#elif defined(TARGET_ARM64)
 
#ifdef __linux__
#define REDZONE_SIZE    0
#elif defined(__APPLE__)
#define REDZONE_SIZE    128
#else
#error "Not implemented."
#endif
 
#elif defined(__mips__)
 
#define REDZONE_SIZE    0
 
#elif defined(__s390x__)
 
#define REDZONE_SIZE    0
 
#elif defined(__sparc__)
 
#define REDZONE_SIZE    0
 
#elif defined (TARGET_WASM)
 
#define REDZONE_SIZE    0
 
#endif
 
#endif /* __MONO_SGENARCHDEP_H__ */