Jonas Maebe
13902c1c7a
* fixed compilation for __ARM_EABI_UNWINDER__ with -dexcdebug
...
git-svn-id: trunk@43015 -
2019-09-15 17:26:21 +00:00
Jonas Maebe
617cc6984b
* call DoUnhandledException instead of RunError(217) when the the psabi eh
...
unwinder returns an error (this is usually because there is no outer
exception catching frame anymore -> unhandled exception) (based on patch by
Cyrax, mantis #35751 )
git-svn-id: trunk@42999 -
2019-09-14 17:30:53 +00:00
florian
b8b3a5b523
* cosmetics
...
git-svn-id: branches/debug_eh@41565 -
2019-03-02 23:04:23 +00:00
florian
0657ce7c02
* get rid of fpc_Resume
...
git-svn-id: branches/debug_eh@41476 -
2019-02-25 21:43:56 +00:00
florian
6b34e511a0
- removed cdecl from FPC_psabi_begin_catch
...
git-svn-id: branches/debug_eh@41475 -
2019-02-25 21:25:22 +00:00
Jonas Maebe
5cb5b10f8d
* fixed LLVM and non-i386 compilation
...
git-svn-id: branches/debug_eh@41423 -
2019-02-23 17:03:42 +00:00
florian
8db9b211d5
* fixed unwinding from signal handlers, the approach used now is very simple and clean
...
git-svn-id: branches/debug_eh@41414 -
2019-02-22 22:01:45 +00:00
florian
b1cc02e417
* reraise has to reset the ref. count to 0
...
git-svn-id: branches/debug_eh@41383 -
2019-02-19 22:17:27 +00:00
florian
9e67e7311a
* change the exception address is only useful if a valid frame is passed
...
git-svn-id: branches/debug_eh@41377 -
2019-02-18 22:04:08 +00:00
florian
0e25d6f00d
* better debug messages
...
+ initial approach to handle addr and frame
git-svn-id: branches/debug_eh@41368 -
2019-02-17 21:45:18 +00:00
florian
a91f009b7e
* cleanup
...
git-svn-id: branches/debug_eh@41309 -
2019-02-11 20:33:50 +00:00
florian
294c7c9daf
* adapt identifiert name
...
* updates for eh_frame support on native targets
* improved messages
git-svn-id: branches/debug_eh@41306 -
2019-02-11 20:29:02 +00:00
Jonas Maebe
1b48e6abe8
* _Unwind_SetGR/_Unwind_GetGR/_Unwind_SetIP/_Unwind_GetIP implementation for
...
ARM EABI
git-svn-id: branches/debug_eh@41214 -
2019-02-03 21:10:07 +00:00
Jonas Maebe
ef1757a5a7
+ ARM EABI exception handling support for PSABIEH
...
git-svn-id: branches/debug_eh@41213 -
2019-02-03 21:10:04 +00:00
Jonas Maebe
d835a91a31
* detabbed
...
git-svn-id: branches/debug_eh@41212 -
2019-02-03 21:10:01 +00:00
Jonas Maebe
42f82f4d40
* the libunwind API resides in libgcc_s on Linux
...
o also link against libc (the current llvm code generator assumes it for
memcpy, and libgcc_s depends on it anyway)
git-svn-id: branches/debug_eh@40433 -
2018-12-01 20:30:31 +00:00
Jonas Maebe
aff3a15081
* call runerror(217) instead of halt(217) when using Dwarf-EH in similar
...
cases as where this happens with the standard SjLj-base exception handling
git-svn-id: branches/debug_eh@40419 -
2018-11-29 21:38:58 +00:00
Jonas Maebe
df0a126064
* abstracted rest of the generic exception handling code through the
...
texceptionstatehandler class + llvm overrides
+ added FPC_DummyPotentialRaise routine that gets called at the begin and end
of try-blocks to be able to catch hardware exceptions to a limited extent
with LLVM
git-svn-id: branches/debug_eh@40418 -
2018-11-29 21:31:40 +00:00
Jonas Maebe
b2608ba02a
+ fpc_reraise and fpc_raise_nested implementations for psabieh
...
git-svn-id: branches/debug_eh@40370 -
2018-11-25 21:05:55 +00:00
Jonas Maebe
9c5a62351d
* more -dexcdebug output
...
o also fixed _Unwind_RaiseException declaration (function rather than
procedure)
git-svn-id: branches/debug_eh@40369 -
2018-11-25 21:05:51 +00:00
Jonas Maebe
8153aa1d00
* fixed frames memory leak when freeing an exception with psabieh
...
git-svn-id: branches/debug_eh@40368 -
2018-11-25 21:05:47 +00:00
Jonas Maebe
e2664e5c30
* fixed recording caught exceptions on the exception stack in
...
FPC_psabi_begin_catchh
git-svn-id: branches/debug_eh@40341 -
2018-11-17 16:21:40 +00:00
Jonas Maebe
f4fa4e22b1
* added a bunch of writeln debugging with -dexcdebug
...
git-svn-id: branches/debug_eh@40335 -
2018-11-17 09:40:33 +00:00
Jonas Maebe
31898da437
* fixed (u)leb reading functions
...
git-svn-id: branches/debug_eh@40334 -
2018-11-17 09:40:30 +00:00
Jonas Maebe
64ba860478
* added psabi eh helpers called from the code generator to the interface of
...
the system unit
* changed a cint to longint as C types are not available there
git-svn-id: branches/debug_eh@40333 -
2018-11-17 09:40:26 +00:00
Jonas Maebe
4bc0e49878
- removed unused FPC_psabieh_can_catch()
...
* added missing exit in FPC_psabieh_find_action_record
* fixed type error in call to _Unwind_SetGR() (caught by compiler fix for
that intrinsic)
git-svn-id: branches/debug_eh@40073 -
2018-10-28 19:54:04 +00:00
Jonas Maebe
b2d1ab7f05
* basic helpers for DWARF/PSABI EH-based exception handling (based on
...
GCC 4.2.1's libstdc++/libsupc++)
- compile RTL with -dFPC_USE_PSEABIEH to include
- the x86-64 compiler currently crashes if it has been compiled with
optimizations (the eh_return_data_regno function from cpubase
probably triggers mantis #34385 )
git-svn-id: branches/debug_eh@40071 -
2018-10-28 18:16:42 +00:00