ia64/xen-unstable

changeset 7508:55aaa12a542a

Fix ar.unat save/restore for fast rfi (by Anthony Xu)
author djm@kirby.fc.hp.com
date Thu Nov 03 07:14:09 2005 -0600 (2005-11-03)
parents 854cfcbef774
children 4ef1a7322bf4
files xen/arch/ia64/xen/hyperprivop.S
line diff
     1.1 --- a/xen/arch/ia64/xen/hyperprivop.S	Wed Nov 02 11:45:49 2005 -0600
     1.2 +++ b/xen/arch/ia64/xen/hyperprivop.S	Thu Nov 03 07:14:09 2005 -0600
     1.3 @@ -807,6 +807,7 @@ just_do_rfi:
     1.4  	// OK, now all set to go except for switch to virtual bank1
     1.5  	mov r22=1;; st4 [r20]=r22;
     1.6  	mov r30=r2; mov r29=r3;;
     1.7 +    mov r17=ar.unat;;
     1.8      adds r16=XSI_B1NATS_OFS-XSI_PSR_IC_OFS,r18
     1.9  	adds r2=XSI_BANK1_OFS-XSI_PSR_IC_OFS,r18;
    1.10  	adds r3=(XSI_BANK1_OFS+8)-XSI_PSR_IC_OFS,r18;;
    1.11 @@ -832,6 +833,7 @@ just_do_rfi:
    1.12  	.mem.offset 8,0; ld8.fill r30=[r2],16 ;
    1.13  	.mem.offset 8,0; ld8.fill r31=[r3],16 ;;
    1.14  	bsw.0 ;;
    1.15 +    mov ar.unat=r17;;
    1.16  	mov r2=r30; mov r3=r29;;
    1.17  1:	mov pr=r31,-1
    1.18  	;;