search for: __built_eh_return

Displaying 3 results from an estimated 3 matches for "__built_eh_return".

Did you mean: __builtin_eh_return
2018 Jan 24
1
Exception handling support for a target
...the spills. > ​Ben, thanks for your input. However, I don't quite understand what you said. ​The prototype of ​__builtin_eh_return (offset, handler) [1], I can't see why it forces spilling all non-volatile registers (I assume non-volatile == callee-saved). ​Take libgcc as an example, __built_eh_return is called in uw_install_context [1], which is called in the end of _Unwind_RaiseException [2]. Do you mean we should compile libgcc without optimization? ​[1] https://github.com/gcc-mirror/gcc/blob/master/libgcc/unwind-dw2.c​ [2] https://github.com/gcc-mirror/gcc/blob/master/libgcc/unwind.inc​ --...
2018 Jan 23
0
Exception handling support for a target
The high level of what happens is that __builtin_eh_return forces a spill of all the non-volatile registers. The unwinder then has a starting point for populating and adjusting those non-volatile registers. This approach usually requires that the function calling __builtin_eh_return be built without optimizations, because the optimizer will then remove the spills. From: llvm-dev
2018 Jan 22
4
Exception handling support for a target
On 22 Jan 2018, at 14:15, Krzysztof Parzyszek via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > On 1/19/2018 7:21 PM, 陳韋任 wrote: >> I see X86, Mips, XCore and Hexagon define their own EH_RETURN and lower to it, but others don't. May I know why it's so on Hexagon? > > Our exception handling runtime uses __builtin_eh_return. Does this mean that you know what it