UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
syms_base_context_crack.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2/* date = July 27th 2021 10:53 am */
3
4#ifndef SYMS_BASE_CONTEXT_CRACK_H
5#define SYMS_BASE_CONTEXT_CRACK_H
6
7#if defined(__clang__)
8
9# define SYMS_COMPILER_CLANG 1
10
11# if defined(_WIN32)
12# define SYMS_OS_WINDOWS 1
13# elif defined(__gnu_linux__) || defined(__linux__)
14# define SYMS_OS_LINUX 1
15# elif defined(__APPLE__) && defined(__MACH__)
16# define SYMS_OS_MAC 1
17# else
18# error SYMS: Build compiler/platform combo is not supported yet
19# endif
20
21# if defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64)
22# define SYMS_ARCH_X64 1
23# elif defined(i386) || defined(__i386) || defined(__i386__)
24# define SYMS_ARCH_X86 1
25# elif defined(__aarch64__)
26# define SYMS_ARCH_ARM64 1
27# elif defined(__arm__)
28# define SYMS_ARCH_ARM32 1
29# else
30# error SYMS: Build architecture not supported yet
31# endif
32
33#elif defined(_MSC_VER)
34
35# define SYMS_COMPILER_CL 1
36
37# if defined(_WIN32)
38# define SYMS_OS_WINDOWS 1
39# else
40# error SYMS: Build compiler/platform combo is not supported yet
41# endif
42
43# if defined(_M_AMD64)
44# define SYMS_ARCH_X64 1
45# elif defined(_M_IX86)
46# define SYMS_ARCH_X86 1
47# elif defined(_M_ARM64)
48# define SYMS_ARCH_ARM64 1
49# elif defined(_M_ARM)
50# define SYMS_ARCH_ARM32 1
51# else
52# error SYMS: Build architecture not supported yet
53# endif
54
55#elif defined(__GNUC__) || defined(__GNUG__)
56
57# define SYMS_COMPILER_GCC 1
58
59# if defined(__gnu_linux__) || defined(__linux__)
60# define SYMS_OS_LINUX 1
61# else
62# error SYMS: Build compiler/platform combo is not supported yet
63# endif
64
65# if defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64)
66# define SYMS_ARCH_X64 1
67# elif defined(i386) || defined(__i386) || defined(__i386__)
68# define SYMS_ARCH_X86 1
69# elif defined(__aarch64__)
70# define SYMS_ARCH_ARM64 1
71# elif defined(__arm__)
72# define SYMS_ARCH_ARM32 1
73# else
74# error SYMS: Build architecture not supported yet
75# endif
76
77#else
78# error SYMS: Build compiler is not supported yet
79#endif
80
81#if defined(SYMS_ARCH_X64)
82# define SYMS_ARCH_64BIT 1
83#elif defined(SYMS_ARCH_X86)
84# define SYMS_ARCH_32BIT 1
85#endif
86
87#if defined(__cplusplus)
88# define SYMS_LANG_CPP 1
89#else
90# define SYMS_LANG_C 1
91#endif
92
93// zeroify
94
95#if !defined(SYMS_ARCH_32BIT)
96# define SYMS_ARCH_32BIT 0
97#endif
98#if !defined(SYMS_ARCH_64BIT)
99# define SYMS_ARCH_64BIT 0
100#endif
101#if !defined(SYMS_ARCH_X64)
102# define SYMS_ARCH_X64 0
103#endif
104#if !defined(SYMS_ARCH_X86)
105# define SYMS_ARCH_X86 0
106#endif
107#if !defined(SYMS_ARCH_ARM64)
108# define SYMS_ARCH_ARM64 0
109#endif
110#if !defined(SYMS_ARCH_ARM32)
111# define SYMS_ARCH_ARM32 0
112#endif
113#if !defined(SYMS_COMPILER_CL)
114# define SYMS_COMPILER_CL 0
115#endif
116#if !defined(SYMS_COMPILER_GCC)
117# define SYMS_COMPILER_GCC 0
118#endif
119#if !defined(SYMS_COMPILER_CLANG)
120# define SYMS_COMPILER_CLANG 0
121#endif
122#if !defined(SYMS_OS_WINDOWS)
123# define SYMS_OS_WINDOWS 0
124#endif
125#if !defined(SYMS_OS_LINUX)
126# define SYMS_OS_LINUX 0
127#endif
128#if !defined(SYMS_OS_MAC)
129# define SYMS_OS_MAC 0
130#endif
131#if !defined(SYMS_LANG_CPP)
132# define SYMS_LANG_CPP 0
133#endif
134#if !defined(SYMS_LANG_C)
135# define SYMS_LANG_C 0
136#endif
137
138#if defined(SYMS_ARCH_X64) || defined(SYMS_ARCH_X86) || defined(SYMS_ARCH_ARM32) || defined(SYMS_ARCH_ARM64)
139# define SYMS_LITTLE_ENDIAN 1
140#else
141# error "undefined endianness"
142#endif
143
144#endif //SYMS_BASE_CONTEXT_CRACK_H