Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
wine-mirror
GitHub Repository: wine-mirror/wine
Path: blob/master/libs/unwind/include/__libunwind_config.h
12346 views
1
//===------------------------- __libunwind_config.h -----------------------===//
2
//
3
// The LLVM Compiler Infrastructure
4
//
5
// This file is dual licensed under the MIT and the University of Illinois Open
6
// Source Licenses. See LICENSE.TXT for details.
7
//
8
//===----------------------------------------------------------------------===//
9
10
#ifndef ____LIBUNWIND_CONFIG_H__
11
#define ____LIBUNWIND_CONFIG_H__
12
13
#if defined(__arm__) && !defined(__USING_SJLJ_EXCEPTIONS__) && \
14
!defined(__ARM_DWARF_EH__) && !defined(__SEH__)
15
#define _LIBUNWIND_ARM_EHABI
16
#endif
17
18
#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_X86 8
19
#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_X86_64 32
20
#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_PPC 112
21
#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_PPC64 116
22
#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_ARM64 95
23
#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_ARM 287
24
#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_OR1K 32
25
#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_MIPS 65
26
#define _LIBUNWIND_HIGHEST_DWARF_REGISTER_SPARC 31
27
28
#if defined(_LIBUNWIND_IS_NATIVE_ONLY)
29
# if defined(__i386__)
30
# define _LIBUNWIND_TARGET_I386
31
# define _LIBUNWIND_CONTEXT_SIZE 8
32
# define _LIBUNWIND_CURSOR_SIZE 15
33
# define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_X86
34
# elif defined(__x86_64__)
35
# define _LIBUNWIND_TARGET_X86_64 1
36
# if defined(_WIN64)
37
# define _LIBUNWIND_CONTEXT_SIZE 54
38
# ifdef __SEH__
39
# define _LIBUNWIND_CURSOR_SIZE 204
40
# else
41
# define _LIBUNWIND_CURSOR_SIZE 66
42
# endif
43
# else
44
# define _LIBUNWIND_CONTEXT_SIZE 21
45
# define _LIBUNWIND_CURSOR_SIZE 33
46
# endif
47
# define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_X86_64
48
# elif defined(__powerpc64__)
49
# define _LIBUNWIND_TARGET_PPC64 1
50
# define _LIBUNWIND_CONTEXT_SIZE 167
51
# define _LIBUNWIND_CURSOR_SIZE 179
52
# define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_PPC64
53
# elif defined(__ppc__)
54
# define _LIBUNWIND_TARGET_PPC 1
55
# define _LIBUNWIND_CONTEXT_SIZE 117
56
# define _LIBUNWIND_CURSOR_SIZE 124
57
# define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_PPC
58
# elif defined(__aarch64__)
59
# define _LIBUNWIND_TARGET_AARCH64 1
60
# define _LIBUNWIND_CONTEXT_SIZE 66
61
# if defined(__SEH__)
62
# define _LIBUNWIND_CURSOR_SIZE 164
63
# else
64
# define _LIBUNWIND_CURSOR_SIZE 78
65
# endif
66
# define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_ARM64
67
# elif defined(__arm__)
68
# define _LIBUNWIND_TARGET_ARM 1
69
# if defined(__SEH__)
70
# define _LIBUNWIND_CONTEXT_SIZE 42
71
# define _LIBUNWIND_CURSOR_SIZE 80
72
# elif defined(__ARM_WMMX)
73
# define _LIBUNWIND_CONTEXT_SIZE 61
74
# define _LIBUNWIND_CURSOR_SIZE 68
75
# else
76
# define _LIBUNWIND_CONTEXT_SIZE 42
77
# define _LIBUNWIND_CURSOR_SIZE 49
78
# endif
79
# define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_ARM
80
# elif defined(__or1k__)
81
# define _LIBUNWIND_TARGET_OR1K 1
82
# define _LIBUNWIND_CONTEXT_SIZE 16
83
# define _LIBUNWIND_CURSOR_SIZE 24
84
# define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_OR1K
85
# elif defined(__mips__)
86
# if defined(_ABIO32) && _MIPS_SIM == _ABIO32
87
# define _LIBUNWIND_TARGET_MIPS_O32 1
88
# if defined(__mips_hard_float)
89
# define _LIBUNWIND_CONTEXT_SIZE 50
90
# define _LIBUNWIND_CURSOR_SIZE 57
91
# else
92
# define _LIBUNWIND_CONTEXT_SIZE 18
93
# define _LIBUNWIND_CURSOR_SIZE 24
94
# endif
95
# elif defined(_ABIN32) && _MIPS_SIM == _ABIN32
96
# define _LIBUNWIND_TARGET_MIPS_NEWABI 1
97
# if defined(__mips_hard_float)
98
# define _LIBUNWIND_CONTEXT_SIZE 67
99
# define _LIBUNWIND_CURSOR_SIZE 74
100
# else
101
# define _LIBUNWIND_CONTEXT_SIZE 35
102
# define _LIBUNWIND_CURSOR_SIZE 42
103
# endif
104
# elif defined(_ABI64) && _MIPS_SIM == _ABI64
105
# define _LIBUNWIND_TARGET_MIPS_NEWABI 1
106
# if defined(__mips_hard_float)
107
# define _LIBUNWIND_CONTEXT_SIZE 67
108
# define _LIBUNWIND_CURSOR_SIZE 79
109
# else
110
# define _LIBUNWIND_CONTEXT_SIZE 35
111
# define _LIBUNWIND_CURSOR_SIZE 47
112
# endif
113
# else
114
# error "Unsupported MIPS ABI and/or environment"
115
# endif
116
# define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_MIPS
117
# elif defined(__sparc__)
118
#define _LIBUNWIND_TARGET_SPARC 1
119
#define _LIBUNWIND_HIGHEST_DWARF_REGISTER _LIBUNWIND_HIGHEST_DWARF_REGISTER_SPARC
120
#define _LIBUNWIND_CONTEXT_SIZE 16
121
#define _LIBUNWIND_CURSOR_SIZE 23
122
# else
123
# error "Unsupported architecture."
124
# endif
125
#else // !_LIBUNWIND_IS_NATIVE_ONLY
126
# define _LIBUNWIND_TARGET_I386
127
# define _LIBUNWIND_TARGET_X86_64 1
128
# define _LIBUNWIND_TARGET_PPC 1
129
# define _LIBUNWIND_TARGET_PPC64 1
130
# define _LIBUNWIND_TARGET_AARCH64 1
131
# define _LIBUNWIND_TARGET_ARM 1
132
# define _LIBUNWIND_TARGET_OR1K 1
133
# define _LIBUNWIND_TARGET_MIPS_O32 1
134
# define _LIBUNWIND_TARGET_MIPS_NEWABI 1
135
# define _LIBUNWIND_TARGET_SPARC 1
136
# define _LIBUNWIND_CONTEXT_SIZE 167
137
# define _LIBUNWIND_CURSOR_SIZE 179
138
# define _LIBUNWIND_HIGHEST_DWARF_REGISTER 287
139
#endif // _LIBUNWIND_IS_NATIVE_ONLY
140
141
#endif // ____LIBUNWIND_CONFIG_H__
142
143