PERFORCE change 29809 for review
Marcel Moolenaar
marcel at FreeBSD.org
Sat Apr 26 12:53:01 PDT 2003
http://perforce.freebsd.org/chv.cgi?CH=29809
Change 29809 by marcel at marcel_nfs on 2003/04/26 12:52:49
Delay restoring the stack pointer until after we're done
with the trapframe and in this case after the loadrs. We
had a nice "window of pain" in which an exception would
clobber the stack because we already set the stack pointer
to that of the process.
Affected files ...
.. //depot/projects/ia64_epc/sys/ia64/ia64/syscall.s#12 edit
Differences ...
==== //depot/projects/ia64_epc/sys/ia64/ia64/syscall.s#12 (text+ko) ====
@@ -406,19 +406,19 @@
{ .mmi
ld8 r19=[r15],16 // pr
ld8 r20=[r14],16 // pfs (syscall stub)
- mov sp=r16
+ mov b6=r18
;;
}
{ .mmi
ld8 r21=[r15],24 // bspstore
ld8 r22=[r14],24 // rnat
- mov b6=r18
+ mov pr=r19,0x1fffe
;;
}
-{ .mmi
+{ .mmb
ld8 r23=[r15],16 // tp
ld8 r24=[r14],16 // rsc
- mov pr=r19,0x1fffe
+ nop 0
;;
}
{ .mmi
@@ -427,7 +427,7 @@
mov ar.pfs=r20
;;
}
-{ .mmi
+{ .mmb
ld8 gp=[r15],16 // gp
ld8 r27=[r14],16 // ndirty
nop 0
@@ -439,7 +439,7 @@
shl r27=r27,16
;;
}
-{ .mmi
+{ .mmb
ld8 r8=[r15],16 // r8
mov ar.rsc=r27
nop 0
@@ -448,13 +448,13 @@
{ .mmi
ld8 r9=[r14] // r9
ld8 r10=[r15] // r10
- nop 0
+ dep r26=-1,r26,19,1 // Set psr.dfh
;;
}
{ .mmi
loadrs
mov r14=ar.k5
- dep r26=-1,r26,19,1 // Set psr.dfh
+ mov sp=r16
;;
}
{ .mmi
More information about the p4-projects
mailing list