Index: arch/ia64/src/cpu/cpu.c
===================================================================
--- arch/ia64/src/cpu/cpu.c	(revision 5a2e9bbbd6e729563075d3e92ba3dd6dfb9aceb8)
+++ arch/ia64/src/cpu/cpu.c	(revision fe56609d549b89f3cdaf034f209b7dfcb325b768)
@@ -15,17 +15,17 @@
 
     int *p=&IVT;
-    
     volatile __u64 hlp,hlp2;
 
 
     int psr = 0x2000;
+    
 
 	__asm__  volatile (
-		"mov r15 = %0;;"
-		"mov cr2 = r15;;"
-		"mov psr.l = %1;;"
+		"mov cr2 = %0;;\n"
+		"mov psr.l = %1;;\n"
+		"srlz.i;"
+		"srlz.d;;"
 		: 
 		: "r" (p), "r" (psr)
-		: "r15"
 	);
 
@@ -33,5 +33,8 @@
 
 	/*Switch register bank of regs r16 .. r31 to 1 It is automaticly cleared on exception*/
-	__asm__ volatile ("bsw.1;;");             
+	__asm__ volatile 
+	(
+	    "bsw.1;;\n"
+	);             
 	
 
