Select one of the symbols to view example projects that use it.
 
Outline
#include <cstdlib>
#include <cstdio>
#include <exception>
#include <bits/functexcept.h>
#include <sdkconfig.h>
abort_expect_void(const void *)
abort_expect_void_and_return(const void *)
forward_abort_uw_ctx(struct _Unwind_Context *)
abort_return()
__wrap___register_frame_info_bases(const void *, struct object *, void *, void *)
__wrap___register_frame_info(const void *, struct object *)
__wrap___register_frame_info_table_bases(void *, struct object *, void *, void *)
__wrap___register_frame_info_table(void *, struct object *)
__wrap___register_frame(void *)
__wrap___register_frame_table(void *)
__wrap___deregister_frame_info_bases(const void *)
__wrap___deregister_frame_info(const void *)
__wrap___deregister_frame(void *)
fde
__wrap__Unwind_Find_FDE(void *, struct dwarf_eh_bases *)
_Unwind_Ptr
_Unwind_Word
__wrap__Unwind_GetGR(struct _Unwind_Context *, int)
__wrap__Unwind_GetCFA(struct _Unwind_Context *)
__wrap__Unwind_SetIP(struct _Unwind_Context *, _Unwind_Ptr)
__wrap__Unwind_SetGR(struct _Unwind_Context *, int, _Unwind_Word)
__wrap__Unwind_GetIPInfo(struct _Unwind_Context *, int *)
__wrap__Unwind_GetIP(struct _Unwind_Context *)
__wrap__Unwind_GetRegionStart(struct _Unwind_Context *)
__wrap__Unwind_GetDataRelBase(struct _Unwind_Context *)
__wrap__Unwind_GetTextRelBase(struct _Unwind_Context *)
__wrap__Unwind_GetLanguageSpecificData(struct _Unwind_Context *)
__wrap__Unwind_FindEnclosingFunction(void *)
frame_state
__frame_state_for(void *, struct frame_state *)
_Unwind_Reason_Code
_Unwind_Action
_Unwind_Exception_Class
_Unwind_Trace_Fn
_Unwind_Stop_Fn
__wrap__Unwind_Resume(struct _Unwind_Exception *)
__wrap__Unwind_DeleteException(struct _Unwind_Exception *)
__wrap__Unwind_RaiseException(struct _Unwind_Exception *)
__wrap__Unwind_Resume_or_Rethrow(struct _Unwind_Exception *)
__wrap__Unwind_ForcedUnwind(struct _Unwind_Exception *, _Unwind_Stop_Fn, void *)
__wrap__Unwind_Backtrace(_Unwind_Trace_Fn, void *)
__wrap___cxa_call_unexpected(void *)
__wrap___gxx_personality_v0(int, _Unwind_Action, _Unwind_Exception_Class, struct _Unwind_Exception *, struct _Unwind_Context *)
__wrap___cxa_allocate_exception()
__wrap___cxa_throw()
Files
loading...
SourceVuESP-IDF Framework and ExamplesESP-IDFcomponents/cxx/cxx_exception_stubs.cpp
 
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
/* * SPDX-FileCopyrightText: 2021-2024 Espressif Systems (Shanghai) CO LTD * * SPDX-License-Identifier: Apache-2.0 *//* ... */ #include <cstdlib> #include <cstdio> #include <exception> #include <bits/functexcept.h> #include <sdkconfig.h>5 includes #ifndef CONFIG_COMPILER_CXX_EXCEPTIONS extern "C" void abort_expect_void(const void *context) { abort(); }{ ... } extern "C" void *abort_expect_void_and_return(const void *context) { abort(); return nullptr; }{ ... } extern "C" void *forward_abort_uw_ctx(struct _Unwind_Context *context) { return abort_expect_void_and_return((void*) context); }{ ... } template<typename T> static T abort_return() { abort(); return static_cast<T>(0); }{...} // unwind-dw2-fde.o extern "C" void __wrap___register_frame_info_bases(const void *begin, struct object *ob, void *tbase, void *dbase) { abort(); }{ ... } extern "C" void __wrap___register_frame_info(const void *begin, struct object *ob) { abort(); }{ ... } extern "C" void __wrap___register_frame_info_table_bases(void *begin, struct object *ob, void *tbase, void *dbase) { abort(); }{ ... } extern "C" void __wrap___register_frame_info_table(void *begin, struct object *ob) { abort(); }{ ... } extern "C" void __wrap___register_frame(void *begin) __attribute__((alias("abort_expect_void"))); extern "C" void __wrap___register_frame_table(void *begin) __attribute__((alias("abort_expect_void"))); extern "C" void *__wrap___deregister_frame_info_bases(const void *begin) __attribute__((alias("abort_expect_void_and_return"))); extern "C" void *__wrap___deregister_frame_info(const void *begin) __attribute__((alias("abort_expect_void_and_return"))); extern "C" void __wrap___deregister_frame(void *begin) __attribute__((alias("abort_expect_void"))); typedef void* fde; extern "C" const fde * __wrap__Unwind_Find_FDE(void *pc, struct dwarf_eh_bases *bases) { return abort_return<fde*>(); }{ ... } // unwind-dw2.o (riscv), unwind-dw2-xtensa.o (xtensa) typedef void* _Unwind_Ptr; typedef int _Unwind_Word; extern "C" _Unwind_Word __wrap__Unwind_GetGR(struct _Unwind_Context *context, int index) { return abort_return<_Unwind_Word>(); }{ ... } extern "C" _Unwind_Word __wrap__Unwind_GetCFA(struct _Unwind_Context *context) { return abort_return<_Unwind_Word>(); }{ ... } extern "C" void __wrap__Unwind_SetIP(struct _Unwind_Context *context, _Unwind_Ptr val) { abort(); }{ ... } extern "C" void __wrap__Unwind_SetGR(struct _Unwind_Context *context, int index, _Unwind_Word val) { abort(); }{ ... } extern "C" _Unwind_Ptr __wrap__Unwind_GetIPInfo(struct _Unwind_Context *context, int *ip_before_insn) { return abort_return<_Unwind_Ptr>(); }{ ... } extern "C" _Unwind_Ptr __wrap__Unwind_GetIP(struct _Unwind_Context *context) __attribute__((alias("forward_abort_uw_ctx"))); extern "C" _Unwind_Ptr __wrap__Unwind_GetRegionStart(struct _Unwind_Context *context) __attribute__((alias("forward_abort_uw_ctx"))); extern "C" _Unwind_Ptr __wrap__Unwind_GetDataRelBase(struct _Unwind_Context *context) __attribute__((alias("forward_abort_uw_ctx"))); extern "C" _Unwind_Ptr __wrap__Unwind_GetTextRelBase(struct _Unwind_Context *context) __attribute__((alias("forward_abort_uw_ctx"))); extern "C" void *__wrap__Unwind_GetLanguageSpecificData(struct _Unwind_Context *context) __attribute__((alias("forward_abort_uw_ctx"))); extern "C" void *__wrap__Unwind_FindEnclosingFunction(void *pc) __attribute__((alias("abort_expect_void_and_return"))); struct frame_state *__frame_state_for(void *pc_target, struct frame_state *state_in) { return abort_return<struct frame_state *>(); }{ ... } // unwind.inc typedef int _Unwind_Reason_Code; typedef int _Unwind_Action; typedef int _Unwind_Exception_Class; typedef int* _Unwind_Trace_Fn; typedef int* _Unwind_Stop_Fn; extern "C" void __wrap__Unwind_Resume(struct _Unwind_Exception *exc) { abort(); }{ ... } extern "C" void __wrap__Unwind_DeleteException(struct _Unwind_Exception *exc) { abort(); }{ ... } extern "C" _Unwind_Reason_Code __wrap__Unwind_RaiseException(struct _Unwind_Exception *exc) { return abort_return<_Unwind_Reason_Code>(); }{ ... } extern "C" _Unwind_Reason_Code __wrap__Unwind_Resume_or_Rethrow(struct _Unwind_Exception *exc) __attribute__((alias("__wrap__Unwind_RaiseException"))); extern "C" _Unwind_Reason_Code __wrap__Unwind_ForcedUnwind(struct _Unwind_Exception *exc, _Unwind_Stop_Fn stop, void * stop_argument) { return abort_return<_Unwind_Reason_Code>(); }{ ... } extern "C" _Unwind_Reason_Code __wrap__Unwind_Backtrace(_Unwind_Trace_Fn trace, void * trace_argument) { return abort_return<_Unwind_Reason_Code>(); }{ ... } // eh_personality.o extern "C" void __wrap___cxa_call_unexpected(void *exc_obj_in) __attribute__((alias("abort_expect_void"))); extern "C" _Unwind_Reason_Code __wrap___gxx_personality_v0(int version, _Unwind_Action actions, _Unwind_Exception_Class exception_class, struct _Unwind_Exception *ue_header, struct _Unwind_Context *context) { return abort_return<_Unwind_Reason_Code>(); }{ ... } // Reduces binary size since the linker will drop some code due to --gc-sections. extern "C" void __wrap___cxa_allocate_exception(void) { abort(); }{ ... } // Reduces binary size since the linker will drop some code due to --gc-sections. extern "C" void __wrap___cxa_throw(void) { abort(); }{ ... } /* ... */#endif // CONFIG_COMPILER_CXX_EXCEPTIONS
Details
Show:
from
Types: Columns:
This file uses the notable symbols shown below. Click anywhere in the file to view more details.