Index: src/libcfa/concurrency/kernel.c
===================================================================
--- src/libcfa/concurrency/kernel.c	(revision 82c948c3ab2d77f43fcf3cdbcab750b272c8e59b)
+++ src/libcfa/concurrency/kernel.c	(revision 539cdfe822856658bb7fc3022d09a4d0d0a1ef85)
@@ -10,6 +10,6 @@
 // Created On       : Tue Jan 17 12:27:26 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Fri Dec  8 16:23:33 2017
-// Update Count     : 3
+// Last Modified On : Tue Feb  6 21:51:26 2018
+// Update Count     : 4
 //
 
@@ -588,4 +588,8 @@
 }
 
+int kernel_abort_lastframe( void ) __attribute__ ((__nothrow__)) {
+	return get_coroutine(this_thread) == get_coroutine(mainThread) ? 4 : 2;
+}
+
 extern "C" {
 	void __cfaabi_dbg_bits_acquire() {
Index: src/libcfa/concurrency/preemption.c
===================================================================
--- src/libcfa/concurrency/preemption.c	(revision 82c948c3ab2d77f43fcf3cdbcab750b272c8e59b)
+++ src/libcfa/concurrency/preemption.c	(revision 539cdfe822856658bb7fc3022d09a4d0d0a1ef85)
@@ -10,6 +10,6 @@
 // Created On       : Mon Jun 5 14:20:42 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Jan 23 17:59:30 2018
-// Update Count     : 7
+// Last Modified On : Tue Feb  6 15:00:36 2018
+// Update Count     : 10
 //
 
@@ -42,4 +42,6 @@
 void sigHandler_ctxSwitch( __CFA_SIGPARMS__ );
 void sigHandler_segv     ( __CFA_SIGPARMS__ );
+void sigHandler_ill      ( __CFA_SIGPARMS__ );
+void sigHandler_fpe      ( __CFA_SIGPARMS__ );
 void sigHandler_abort    ( __CFA_SIGPARMS__ );
 
@@ -243,5 +245,5 @@
 
 	// Setup proper signal handlers
-	__kernel_sigaction( SIGUSR1, sigHandler_ctxSwitch, SA_SIGINFO | SA_RESTART );         // CtxSwitch handler
+	__cfaabi_sigaction( SIGUSR1, sigHandler_ctxSwitch, SA_SIGINFO | SA_RESTART );         // CtxSwitch handler
 
 	signal_block( SIGALRM );
