Author: marcel
Date: Fri Dec 11 01:26:26 2009
New Revision: 200386
URL: http://svn.freebsd.org/changeset/base/200386

Log:
  MFC rev 200240:
  In exception_save, write-back ar.rnat after switching the backing-store.
  
  PR:           ia64/120315

Modified:
  stable/8/sys/ia64/ia64/exception.S
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)
  stable/8/sys/dev/xen/xenpci/   (props changed)

Modified: stable/8/sys/ia64/ia64/exception.S
==============================================================================
--- stable/8/sys/ia64/ia64/exception.S  Fri Dec 11 01:26:09 2009        
(r200385)
+++ stable/8/sys/ia64/ia64/exception.S  Fri Dec 11 01:26:26 2009        
(r200386)
@@ -219,43 +219,42 @@ exception_save_restart:
 (p13)  dep             r20=r20,r21,0,9         // align dirty registers
        ;;
 }
-       // r20=bspstore, r22=iip, r23=ipsr
+       // r19=rnat, r20=bspstore, r22=iip, r23=ipsr
 {      .mmi
        st8             [r31]=r23,16            // psr
 (p13)  mov             ar.bspstore=r20
        nop             0
        ;;
 }
-{      .mmi
+{      .mmb
+(p13)  mov             ar.rnat=r19
        mov             r18=ar.bsp
-       ;;
-       mov             r19=cr.ifs
-       sub             r18=r18,r20
+       nop             0
        ;;
 }
 {      .mmi
+       mov             r19=cr.ifs
        st8.spill       [r30]=gp,16             // gp
-       st8             [r31]=r18,16            // ndirty
-       nop             0
+       sub             r18=r18,r20
        ;;
 }
        // r19=ifs, r22=iip
-{      .mmi
+{      .mmb
+       st8             [r31]=r18,16            // ndirty
        st8             [r30]=r19,16            // cfm
-       st8             [r31]=r22,16            // iip
        nop             0
        ;;
 }
 {      .mmi
-       st8             [r30]=r17               // ifa
        mov             r18=cr.isr
+       st8             [r31]=r22,16            // iip
        add             r29=16,r30
        ;;
 }
-{      .mmi
-       st8             [r31]=r18               // isr
-       add             r30=8,r29
-       add             r31=16,r29
+{      .mmb
+       st8             [r30]=r17,24            // ifa
+       st8             [r31]=r18,24            // isr
+       nop             0
        ;;
 }
 {      .mmi
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to