Index: kernel/arch/ia64/Makefile.inc
===================================================================
--- kernel/arch/ia64/Makefile.inc	(revision 68f93b968032b3a4b8e3851e8825d07b30f48f32)
+++ kernel/arch/ia64/Makefile.inc	(revision b006bfb81e6f93c2a9beb8e933ab2c414132d06f)
@@ -88,5 +88,6 @@
 	ARCH_SOURCES += arch/$(ARCH)/src/ski/ski.c 
 	DEFS += -DSKI
-	BFD = elf64-ia64-little
+#	BFD = elf64-ia64-little
+	BFD = binary
 endif
 
Index: kernel/arch/ia64/src/ia64.c
===================================================================
--- kernel/arch/ia64/src/ia64.c	(revision 68f93b968032b3a4b8e3851e8825d07b30f48f32)
+++ kernel/arch/ia64/src/ia64.c	(revision b006bfb81e6f93c2a9beb8e933ab2c414132d06f)
@@ -62,5 +62,5 @@
 	/* Setup usermode init tasks. */
 
-#ifdef I460GX
+//#ifdef I460GX
 	int i;
 	init.cnt = bootinfo->taskmap.count;
@@ -70,4 +70,5 @@
 	    init.tasks[i].size = bootinfo->taskmap.tasks[i].size;
 	}
+/*
 #else	
 	init.cnt = 8;
@@ -88,5 +89,5 @@
 	init.tasks[7].addr = INIT0_ADDRESS + 0x1c00000;
 	init.tasks[7].size = INIT0_SIZE;
-#endif
+#endif*/
 }
 
Index: kernel/arch/ia64/src/start.S
===================================================================
--- kernel/arch/ia64/src/start.S	(revision 68f93b968032b3a4b8e3851e8825d07b30f48f32)
+++ kernel/arch/ia64/src/start.S	(revision b006bfb81e6f93c2a9beb8e933ab2c414132d06f)
@@ -108,7 +108,8 @@
 
 	# initialize gp (Global Pointer) register
-	mov r20 = r1 ;;
+	movl r20 = (VRN_KERNEL << VRN_SHIFT);;
+	or r20 = r20,r1;;
 	movl r1 = _hardcoded_load_address
-
+	
 	/*
 	 * Initialize hardcoded_* variables.
