Index: src/libcfa/Makefile.am
===================================================================
--- src/libcfa/Makefile.am	(revision 2b8bc41cc0f55bac8689d482865c1aaa65298733)
+++ src/libcfa/Makefile.am	(revision 381fdee5d28e58b7c6f73f40e6d72ec1f6dfc7d1)
@@ -10,7 +10,7 @@
 ## Author           : Peter A. Buhr
 ## Created On       : Sun May 31 08:54:01 2015
-## Last Modified By : Andrew Beach
-## Last Modified On : Wed Jul 26 14:15:00 2017
-## Update Count     : 221
+## Last Modified By : Peter A. Buhr
+## Last Modified On : Fri Feb  9 15:51:24 2018
+## Update Count     : 223
 ###############################################################################
 
@@ -92,5 +92,5 @@
 libcfa_d_a_CFLAGS = -debug -O0 #No need for __CFA_DEBUG__ since we pass -debug
 
-stdhdr = ${shell echo stdhdr/*}
+stdhdr = ${shell find stdhdr -type f -printf "%p "}
 
 cfa_includedir = $(CFA_INCDIR)
Index: src/libcfa/concurrency/invoke.c
===================================================================
--- src/libcfa/concurrency/invoke.c	(revision 2b8bc41cc0f55bac8689d482865c1aaa65298733)
+++ src/libcfa/concurrency/invoke.c	(revision 381fdee5d28e58b7c6f73f40e6d72ec1f6dfc7d1)
@@ -10,6 +10,6 @@
 // Created On       : Tue Jan 17 12:27:26 2016
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Jan 23 14:04:56 2018
-// Update Count     : 2
+// Last Modified On : Fri Feb  9 14:41:56 2018
+// Update Count     : 3
 //
 
@@ -93,5 +93,5 @@
 	struct coStack_t* stack = &get_coroutine( this )->stack;
 
-#if defined( __i386__ )
+#if defined( __i386 )
 
 	struct FakeStack {
@@ -114,5 +114,5 @@
 	((struct FakeStack *)(((struct machine_context_t *)stack->context)->SP))->fcw = 0x037F;  //Vol. 1 8-7
 
-#elif defined( __x86_64__ )
+#elif defined( __x86_64 )
 
 	struct FakeStack {
@@ -150,6 +150,7 @@
 	fs->arg[0] = this;
 	fs->arg[1] = invoke;
+
 #else
-	#error Only __i386__ and __x86_64__ is supported for threads in cfa
+	#error uknown hardware architecture
 #endif
 }
Index: src/libcfa/concurrency/invoke.h
===================================================================
--- src/libcfa/concurrency/invoke.h	(revision 2b8bc41cc0f55bac8689d482865c1aaa65298733)
+++ src/libcfa/concurrency/invoke.h	(revision 381fdee5d28e58b7c6f73f40e6d72ec1f6dfc7d1)
@@ -10,6 +10,6 @@
 // Created On       : Tue Jan 17 12:27:26 2016
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Jan 23 14:55:46 2018
-// Update Count     : 3
+// Last Modified On : Fri Feb  9 14:41:55 2018
+// Update Count     : 6
 //
 
@@ -202,13 +202,13 @@
 	void CtxSwitch( void * from, void * to ) asm ("CtxSwitch");
 
-	#if   defined( __x86_64__ )
+	#if   defined( __i386 )
+	#define CtxGet( ctx ) __asm__ ( \
+			"movl %%esp,%0\n"   \
+			"movl %%ebp,%1\n"   \
+		: "=rm" (ctx.SP), "=rm" (ctx.FP) )
+	#elif defined( __x86_64 )
 	#define CtxGet( ctx ) __asm__ ( \
 			"movq %%rsp,%0\n"   \
 			"movq %%rbp,%1\n"   \
-		: "=rm" (ctx.SP), "=rm" (ctx.FP) )
-	#elif defined( __i386__ )
-	#define CtxGet( ctx ) __asm__ ( \
-			"movl %%esp,%0\n"   \
-			"movl %%ebp,%1\n"   \
 		: "=rm" (ctx.SP), "=rm" (ctx.FP) )
 	#elif defined( __ARM_ARCH )
@@ -217,4 +217,6 @@
 			"mov %1,%%r11\n"   \
 		: "=rm" (ctx.SP), "=rm" (ctx.FP) )
+	#else
+		#error unknown hardware architecture
 	#endif
 
Index: src/libcfa/concurrency/kernel.c
===================================================================
--- src/libcfa/concurrency/kernel.c	(revision 2b8bc41cc0f55bac8689d482865c1aaa65298733)
+++ src/libcfa/concurrency/kernel.c	(revision 381fdee5d28e58b7c6f73f40e6d72ec1f6dfc7d1)
@@ -10,11 +10,10 @@
 // Created On       : Tue Jan 17 12:27:26 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Feb  6 21:51:26 2018
-// Update Count     : 4
+// Last Modified On : Thu Feb  8 23:52:19 2018
+// Update Count     : 5
 //
 
 //C Includes
 #include <stddef.h>
-#define ftype `ftype`
 extern "C" {
 #include <stdio.h>
@@ -24,5 +23,4 @@
 #include <unistd.h>
 }
-#undef ftype
 
 //CFA Includes
Index: src/libcfa/concurrency/preemption.c
===================================================================
--- src/libcfa/concurrency/preemption.c	(revision 2b8bc41cc0f55bac8689d482865c1aaa65298733)
+++ src/libcfa/concurrency/preemption.c	(revision 381fdee5d28e58b7c6f73f40e6d72ec1f6dfc7d1)
@@ -10,11 +10,10 @@
 // Created On       : Mon Jun 5 14:20:42 2017
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Tue Feb  6 15:00:36 2018
-// Update Count     : 10
+// Last Modified On : Fri Feb  9 14:42:34 2018
+// Update Count     : 25
 //
 
 #include "preemption.h"
 
-#define ftype `ftype`
 extern "C" {
 #include <errno.h>
@@ -23,5 +22,4 @@
 #include <unistd.h>
 }
-#undef ftype
 
 #include "bits/signal.h"
@@ -50,10 +48,12 @@
 
 // Machine specific register name
-#if   defined(__x86_64__)
+#if   defined( __i386 )
+#define CFA_REG_IP gregs[REG_EIP]
+#elif defined( __x86_64 )
 #define CFA_REG_IP gregs[REG_RIP]
-#elif defined(__i386__)
-#define CFA_REG_IP gregs[REG_EIP]
-#elif defined(__ARM_ARCH__)
+#elif defined( __ARM_ARCH )
 #define CFA_REG_IP arm_pc
+#else
+#error unknown hardware architecture
 #endif
 
Index: src/libcfa/exception.c
===================================================================
--- src/libcfa/exception.c	(revision 2b8bc41cc0f55bac8689d482865c1aaa65298733)
+++ src/libcfa/exception.c	(revision 381fdee5d28e58b7c6f73f40e6d72ec1f6dfc7d1)
@@ -9,7 +9,7 @@
 // Author           : Andrew Beach
 // Created On       : Mon Jun 26 15:13:00 2017
-// Last Modified By : Andrew Beach
-// Last Modified On : Thr Aug 17 15:45:00 2017
-// Update Count     : 7
+// Last Modified By : Peter A. Buhr
+// Last Modified On : Fri Feb  9 14:41:55 2018
+// Update Count     : 8
 //
 
@@ -453,5 +453,5 @@
 // match, which is no way generic.  Some more works need to be done if we want to have a single call to the try routine.
 
-#if defined( __x86_64__ ) || defined( __i386__ )
+#if defined( __i386 ) || defined( __x86_64 )
 asm (
 	//HEADER
@@ -476,3 +476,3 @@
 //	"	.section	.note.GNU-stack,\"x\",@progbits\n"
 );
-#endif // __x86_64__ || __i386__
+#endif // __i386 || __x86_64
Index: src/libcfa/stdhdr/sys/ucontext.h
===================================================================
--- src/libcfa/stdhdr/sys/ucontext.h	(revision 381fdee5d28e58b7c6f73f40e6d72ec1f6dfc7d1)
+++ src/libcfa/stdhdr/sys/ucontext.h	(revision 381fdee5d28e58b7c6f73f40e6d72ec1f6dfc7d1)
@@ -0,0 +1,32 @@
+//
+// Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo
+//
+// The contents of this file are covered under the licence agreement in the
+// file "LICENCE" distributed with Cforall.
+// 
+// uco.h -- 
+// 
+// Author           : Peter A. Buhr
+// Created On       : Thu Feb  8 23:48:16 2018
+// Last Modified By : Peter A. Buhr
+// Last Modified On : Thu Feb  8 23:50:44 2018
+// Update Count     : 4
+// 
+
+#if ! defined( ftype )									// nesting ?
+#define ftype `ftype`									// make keyword an identifier
+#define __CFA_UCONTEXT_H__
+#endif
+
+#include_next <sys/ucontext.h>							// must have internal check for multiple expansion
+
+#if defined( ftype ) && defined( __CFA_UCONTEXT_H__ )	// reset only if set
+#undef ftype
+#undef __CFA_UCONTEXT_H__
+#endif
+
+// Local Variables: //
+// tab-width: 4 //
+// mode: c++ //
+// compile-command: "make install" //
+// End: //
