init.c
59.1 KB
-
system-solaris-x86.ads (ZCX_By_Default): Switch to True. · 43316a01
2007-08-14 Olivier Hainque <hainque@adacore.com> * system-solaris-x86.ads (ZCX_By_Default): Switch to True. (GCC_ZCX_Support): Switch to True. * s-intman-solaris.adb (Notify_Exception): Call Adjust_Context_For_Raise before raising, as expected for signal handlers in general. * s-intman-posix.adb (Notify_Exception): Remove declaration of Adjust_Context_For_Raise, moved to the spec of this unit to be visible to other implementation bodies. * s-intman.ads (Adjust_Context_For_Raise): Declare and import here, to be visible by multiple implementation bodies. * init.c [VMS section] (__gnat_handle_vms_condition): Adjust context only for conditions coming from hardware. [alpha-tru64 section] (__gnat_adjust_context_for_raise): Implement, adjustments to signal context prior to exception raise from signal handler. (__gnat_map_signal for VxWorks): Map SIGSEGV to Storage_Error in RTP mode. Solaris section: (__gnat_adjust_context_for_raise): New function. Implementation of the machine context adjustments to perform prior to raise from a signal handler. Version for both sparc and x86. (HAVE_GNAT_ADJUST_CONTEXT_FOR_RAISE): Define. (__gnat_error_handler): Expect a third argument, ucontext_t *. Adjust it prior to raising as expected for any handler, before possible nested faults to make sure all the contexts in a chain have been adjusted by the time we propagate. From-SVN: r127433
Olivier Hainque committed