[IA64] Fix usage of 14 bit immediate value of IA64_RBS_OFFSET
authorawilliam@xenbuild2.aw <awilliam@xenbuild2.aw>
Sun, 4 Feb 2007 18:41:25 +0000 (11:41 -0700)
committerawilliam@xenbuild2.aw <awilliam@xenbuild2.aw>
Sun, 4 Feb 2007 18:41:25 +0000 (11:41 -0700)
Limit is exceeded w/ 16k page size

Signed-off-by: Anthony Xu <anthony.xu@intel.com>
xen/arch/ia64/vmx/vmx_entry.S

index 48a516d36c0304127ba0df5c7061eb9c443caa5a..1e0b85b313793b8e9ce47463171f4c6b790dfddd 100644 (file)
@@ -575,12 +575,14 @@ GLOBAL_ENTRY(ia64_leave_hypercall)
 
 //  srlz.d                             // M0   ensure interruption collection is off (for cover)
 //  shr.u r18=r19,16           // I0|1 get byte size of existing "dirty" partition
+    mov r3=r21
     cover                              // B    add current frame into dirty partition & set cr.ifs
     ;;
 //(pUStk) ld4 r17=[r17]                        // M0|1 r17 = cpu_data->phys_stacked_size_p8
     mov r19=ar.bsp                     // M2   get new backing store pointer
-    adds r18=IA64_RBS_OFFSET, r21
+    adds r18=IA64_RBS_OFFSET, r3
     ;;
+    mov r3=r0
     sub r18=r19,r18     // get byte size of existing "dirty" partition
     ;;
     shl r20=r18,16     // set rsc.load