dfilter service
2009-12-08 00:50:03 UTC
The following reply was made to PR ia64/120315; it has been noted by GNATS.
From: ***@FreeBSD.ORG (dfilter service)
To: bug-***@FreeBSD.org
Cc:
Subject: Re: ia64/120315: commit references a PR
Date: Tue, 8 Dec 2009 00:44:36 +0000 (UTC)
Author: marcel
Date: Tue Dec 8 00:44:23 2009
New Revision: 200240
URL: http://svn.freebsd.org/changeset/base/200240
Log:
In exception_save, write-back ar.rnat after switching the backing-
store. Writing to ar.bspstore is defined to leave ar.rnat undefined.
PR: ia64/120315
MFC after: 3 days
Modified:
head/sys/ia64/ia64/exception.S
Modified: head/sys/ia64/ia64/exception.S
==============================================================================
--- head/sys/ia64/ia64/exception.S Mon Dec 7 21:30:54 2009 (r200239)
+++ head/sys/ia64/ia64/exception.S Tue Dec 8 00:44:23 2009 (r200240)
@@ -228,43 +228,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-***@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-***@freebsd.org"
From: ***@FreeBSD.ORG (dfilter service)
To: bug-***@FreeBSD.org
Cc:
Subject: Re: ia64/120315: commit references a PR
Date: Tue, 8 Dec 2009 00:44:36 +0000 (UTC)
Author: marcel
Date: Tue Dec 8 00:44:23 2009
New Revision: 200240
URL: http://svn.freebsd.org/changeset/base/200240
Log:
In exception_save, write-back ar.rnat after switching the backing-
store. Writing to ar.bspstore is defined to leave ar.rnat undefined.
PR: ia64/120315
MFC after: 3 days
Modified:
head/sys/ia64/ia64/exception.S
Modified: head/sys/ia64/ia64/exception.S
==============================================================================
--- head/sys/ia64/ia64/exception.S Mon Dec 7 21:30:54 2009 (r200239)
+++ head/sys/ia64/ia64/exception.S Tue Dec 8 00:44:23 2009 (r200240)
@@ -228,43 +228,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-***@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-***@freebsd.org"