Index: kernel/arch/ia64/_link.ld.in
===================================================================
--- kernel/arch/ia64/_link.ld.in	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/_link.ld.in	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -6,6 +6,4 @@
  *
  */
-
-#define __ASM__
 
 ENTRY(kernel_image_start)
Index: kernel/arch/ia64/include/context.h
===================================================================
--- kernel/arch/ia64/include/context.h	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/include/context.h	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -38,5 +38,4 @@
 #include <arch/types.h>
 #include <arch/register.h>
-#include <typedefs.h>
 #include <align.h>
 #include <arch/stack.h>
@@ -48,5 +47,5 @@
  * One item is put onto the stack to support get_stack_base().
  */
-#define SP_DELTA	(0+ALIGN_UP(STACK_ITEM_SIZE, STACK_ALIGNMENT))
+#define SP_DELTA	(0 + ALIGN_UP(STACK_ITEM_SIZE, STACK_ALIGNMENT))
 
 #ifdef context_set
@@ -106,25 +105,25 @@
 	uint64_t pr;
 
-	__r128 f2 __attribute__ ((aligned(16)));
-	__r128 f3;
-	__r128 f4;
-	__r128 f5;
+	uint128_t f2 __attribute__ ((aligned(16)));
+	uint128_t f3;
+	uint128_t f4;
+	uint128_t f5;
 
-	__r128 f16;
-	__r128 f17;
-	__r128 f18;
-	__r128 f19;
-	__r128 f20;
-	__r128 f21;
-	__r128 f22;
-	__r128 f23;
-	__r128 f24;
-	__r128 f25;
-	__r128 f26;
-	__r128 f27;
-	__r128 f28;
-	__r128 f29;
-	__r128 f30;
-	__r128 f31;
+	uint128_t f16;
+	uint128_t f17;
+	uint128_t f18;
+	uint128_t f19;
+	uint128_t f20;
+	uint128_t f21;
+	uint128_t f22;
+	uint128_t f23;
+	uint128_t f24;
+	uint128_t f25;
+	uint128_t f26;
+	uint128_t f27;
+	uint128_t f28;
+	uint128_t f29;
+	uint128_t f30;
+	uint128_t f31;
 	
 	ipl_t ipl;
Index: kernel/arch/ia64/include/cpu.h
===================================================================
--- kernel/arch/ia64/include/cpu.h	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/include/cpu.h	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -37,6 +37,6 @@
 
 #include <arch/types.h>
-#include <typedefs.h>
 #include <arch/register.h>
+#include <arch/asm.h>
 
 #define FAMILY_ITANIUM	0x7
Index: kernel/arch/ia64/include/fpu_context.h
===================================================================
--- kernel/arch/ia64/include/fpu_context.h	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/include/fpu_context.h	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -44,5 +44,5 @@
 
 typedef struct {
-	__r128 fr[FRS];
+	uint128_t fr[FRS];
 } fpu_context_t;
 
Index: kernel/arch/ia64/include/interrupt.h
===================================================================
--- kernel/arch/ia64/include/interrupt.h	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/include/interrupt.h	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -36,5 +36,4 @@
 #define KERN_ia64_INTERRUPT_H_
 
-#include <typedefs.h>
 #include <arch/types.h>
 #include <arch/register.h>
@@ -65,35 +64,35 @@
 #define EOI	0		/**< The actual value doesn't matter. */
 
-struct istate {
-	__r128 f2;
-	__r128 f3;
-	__r128 f4;
-	__r128 f5;
-	__r128 f6;
-	__r128 f7;
-	__r128 f8;
-	__r128 f9;
-	__r128 f10;
-	__r128 f11;
-	__r128 f12;
-	__r128 f13;
-	__r128 f14;
-	__r128 f15;
-	__r128 f16;
-	__r128 f17;
-	__r128 f18;
-	__r128 f19;
-	__r128 f20;
-	__r128 f21;
-	__r128 f22;
-	__r128 f23;
-	__r128 f24;
-	__r128 f25;
-	__r128 f26;
-	__r128 f27;
-	__r128 f28;
-	__r128 f29;
-	__r128 f30;
-	__r128 f31;
+typedef struct {
+	uint128_t f2;
+	uint128_t f3;
+	uint128_t f4;
+	uint128_t f5;
+	uint128_t f6;
+	uint128_t f7;
+	uint128_t f8;
+	uint128_t f9;
+	uint128_t f10;
+	uint128_t f11;
+	uint128_t f12;
+	uint128_t f13;
+	uint128_t f14;
+	uint128_t f15;
+	uint128_t f16;
+	uint128_t f17;
+	uint128_t f18;
+	uint128_t f19;
+	uint128_t f20;
+	uint128_t f21;
+	uint128_t f22;
+	uint128_t f23;
+	uint128_t f24;
+	uint128_t f25;
+	uint128_t f26;
+	uint128_t f27;
+	uint128_t f28;
+	uint128_t f29;
+	uint128_t f30;
+	uint128_t f31;
 		
 	uintptr_t ar_bsp;
@@ -120,5 +119,5 @@
 	uint64_t in3;
 	uint64_t in4;
-};
+} istate_t;
 
 static inline void istate_set_retaddr(istate_t *istate, uintptr_t retaddr)
Index: kernel/arch/ia64/include/mm/as.h
===================================================================
--- kernel/arch/ia64/include/mm/as.h	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/include/mm/as.h	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -48,4 +48,6 @@
 } as_arch_t;
 
+#include <genarch/mm/as_ht.h>
+
 #define as_constructor_arch(as, flags)		(as != as)
 #define as_destructor_arch(as)			(as != as)
Index: kernel/arch/ia64/include/mm/page.h
===================================================================
--- kernel/arch/ia64/include/mm/page.h	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/include/mm/page.h	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -86,10 +86,10 @@
 #ifndef __ASM__
 
+#include <arch/mm/as.h>
 #include <arch/mm/frame.h>
+#include <arch/interrupt.h>
 #include <arch/barrier.h>
-#include <genarch/mm/page_ht.h>
 #include <arch/mm/asid.h>
 #include <arch/types.h>
-#include <typedefs.h>
 #include <debug.h>
 
Index: kernel/arch/ia64/include/mm/tlb.h
===================================================================
--- kernel/arch/ia64/include/mm/tlb.h	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/include/mm/tlb.h	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -43,5 +43,4 @@
 #include <arch/interrupt.h>
 #include <arch/types.h>
-#include <typedefs.h>
 
 /** Data and instruction Translation Register indices. */
Index: kernel/arch/ia64/include/types.h
===================================================================
--- kernel/arch/ia64/include/types.h	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/include/types.h	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -36,10 +36,16 @@
 #define KERN_ia64_TYPES_H_
 
-#define NULL	0
+#define NULL 0
+#define false 0
+#define true 1
 
 typedef signed char int8_t;
-typedef signed short int int16_t;
+typedef signed short int16_t;
 typedef signed int int32_t;
 typedef signed long int64_t;
+typedef struct {
+	int64_t lo;
+	int64_t hi;
+} int128_t;
 
 typedef unsigned char uint8_t;
@@ -47,13 +53,12 @@
 typedef unsigned int uint32_t;
 typedef unsigned long uint64_t;
+typedef struct {
+	uint64_t lo;
+	uint64_t hi;
+} uint128_t;
 
-typedef unsigned char __r8; 			/* Reserve byte */
-typedef unsigned short __r16;
-typedef unsigned int __r32;
-typedef unsigned long __r64;
-typedef struct __r128 {
-	__r64 lo;
-	__r64 hi;
-} __r128;
+typedef uint64_t size_t;
+typedef uint64_t count_t;
+typedef uint64_t index_t;
 
 typedef uint64_t uintptr_t;
@@ -65,5 +70,10 @@
 typedef int64_t native_t;
 
-typedef struct pte pte_t;
+typedef uint8_t bool;
+typedef uint64_t task_id_t;
+typedef uint32_t context_id_t;
+
+typedef int32_t inr_t;
+typedef int32_t devno_t;
 
 #endif
Index: kernel/arch/ia64/src/ddi/ddi.c
===================================================================
--- kernel/arch/ia64/src/ddi/ddi.c	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/src/ddi/ddi.c	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -36,5 +36,4 @@
 #include <proc/task.h>
 #include <arch/types.h>
-#include <typedefs.h>
 
 /** Enable I/O space range for task.
Index: kernel/arch/ia64/src/mm/page.c
===================================================================
--- kernel/arch/ia64/src/mm/page.c	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/src/mm/page.c	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -40,5 +40,4 @@
 #include <arch/mm/vhpt.h>
 #include <arch/types.h>
-#include <typedefs.h>
 #include <print.h>
 #include <mm/page.h>
Index: kernel/arch/ia64/src/mm/tlb.c
===================================================================
--- kernel/arch/ia64/src/mm/tlb.c	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/src/mm/tlb.c	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -48,5 +48,4 @@
 #include <arch/pal/pal.h>
 #include <arch/asm.h>
-#include <typedefs.h>
 #include <panic.h>
 #include <print.h>
Index: kernel/arch/ia64/src/mm/vhpt.c
===================================================================
--- kernel/arch/ia64/src/mm/vhpt.c	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/src/mm/vhpt.c	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -33,4 +33,5 @@
 */
 
+#include <memstr.h>
 #include <arch/mm/vhpt.h>
 #include <mm/frame.h>
@@ -41,6 +42,6 @@
 uintptr_t vhpt_set_up(void)
 {
-	vhpt_base = frame_alloc(VHPT_WIDTH-FRAME_WIDTH,FRAME_KA | FRAME_ATOMIC);
-	if(!vhpt_base) 
+	vhpt_base = frame_alloc(VHPT_WIDTH - FRAME_WIDTH, FRAME_KA | FRAME_ATOMIC);
+	if (!vhpt_base) 
 		panic("Kernel configured with VHPT but no memory for table.");
 	vhpt_invalidate_all();
@@ -62,26 +63,24 @@
 	rid = ASID2RID(asid, vrn);
 																												
-  rr_save.word = rr_read(vrn);
-  rr.word = rr_save.word;
-  rr.map.rid = rid;
-  rr_write(vrn, rr.word);
-  srlz_i();
+	rr_save.word = rr_read(vrn);
+	rr.word = rr_save.word;
+	rr.map.rid = rid;
+	rr_write(vrn, rr.word);
+	srlz_i();
 	
 	ventry = (vhpt_entry_t *) thash(va);
-  tag = ttag(va);
-  rr_write(vrn, rr_save.word);
-  srlz_i();
-  srlz_d();
+	tag = ttag(va);
+	rr_write(vrn, rr_save.word);
+	srlz_i();
+	srlz_d();
 
-	ventry->word[0]=entry.word[0];
-	ventry->word[1]=entry.word[1];
+	ventry->word[0] = entry.word[0];
+	ventry->word[1] = entry.word[1];
 	ventry->present.tag.tag_word = tag;
-	
-
 }
 
 void vhpt_invalidate_all()
 {
-	memsetb((uintptr_t)vhpt_base,1<<VHPT_WIDTH,0);
+	memsetb((uintptr_t) vhpt_base, 1 << VHPT_WIDTH, 0);
 }
 
Index: kernel/arch/ia64/src/ski/ski.c
===================================================================
--- kernel/arch/ia64/src/ski/ski.c	(revision 0f3fc9b4dfadc676e3337514570c32d8d8c9b162)
+++ kernel/arch/ia64/src/ski/ski.c	(revision b1349e0e6dd0ceaac24eaa1e363afe9e5d81fffc)
@@ -39,5 +39,4 @@
 #include <sysinfo/sysinfo.h>
 #include <arch/types.h>
-#include <typedefs.h>
 #include <ddi/device.h>
 #include <ddi/irq.h>
