Update of /cvsroot/wisp/wisp/src/native
In directory usw-pr-cvs1:/tmp/cvs-serv3540/src/native
Modified Files:
sys.s sys.wth sys_raw.nasm
Log Message:
Dropped |sys:raw:nanosleep|.
Index: sys.s
===================================================================
RCS file: /cvsroot/wisp/wisp/src/native/sys.s,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- sys.s 4 Sep 2002 14:35:28 -0000 1.3
+++ sys.s 7 Sep 2002 21:51:50 -0000 1.4
@@ -105,6 +105,44 @@
.equiv N_sys_ns_pipe.L6, N_sys_ns_pipe + 96
.section .text
.align 16
+N_sys_ns_nanosleep:
+.byte 144,81,131,249,1,15,132,8,0,0,0,88,137,193,233
+.long N_signal_argcount - (.+4)
+.byte 88,88,137,195,131,243,2,131,227,7,80,133,219,15,133,48,0,0,0,88,37
+.byte 248,255,255,255,137,195,139,27,5,4,0,0,0,139,0,80,104
+.long N_sys_ns_nanosleep.L2
+.byte 83,233
+.long decui$1 - (.+4)
+.byte 91,80,104
+.long N_sys_ns_nanosleep.L3
+.byte 83,233
+.long decui$1 - (.+4)
+.byte 80,233,12,0,0,0,88,104
+.long WB_cons_huh
+.byte 80,233
+.long raise$2 - (.+4)
+.byte 88,91,80,83,137,227,137,225,184,162,0,0,0,205,128,91,89,137,199
+.byte 247,223,83,81,80,131,255,4,15,133,34,0,0,0,88,88,91,80,104
+.long N_sys_ns_nanosleep.L6
+.byte 83,233
+.long encui$1 - (.+4)
+.byte 91,80,104
+.long N_sys_ns_nanosleep.L7
+.byte 83,233
+.long encui$1 - (.+4)
+.byte 80,233
+.long cons$2 - (.+4)
+.byte 88,91,91,80,233
+.long encsi$1 - (.+4)
+.byte 88,195
+.global N_sys_ns_nanosleep,NN_sys_ns_nanosleep,N_sys_ns_nanosleep.L2,N_sys_ns_nanosleep.L3,N_sys_ns_nanosleep.L6,N_sys_ns_nanosleep.L7
+.equiv NN_sys_ns_nanosleep, N_sys_ns_nanosleep + 1
+.equiv N_sys_ns_nanosleep.L2, N_sys_ns_nanosleep + 67
+.equiv N_sys_ns_nanosleep.L3, N_sys_ns_nanosleep + 80
+.equiv N_sys_ns_nanosleep.L6, N_sys_ns_nanosleep + 146
+.equiv N_sys_ns_nanosleep.L7, N_sys_ns_nanosleep + 159
+.section .text
+.align 16
N_sys_ns_mkdir:
.byte 144,81,131,249,2,15,132,8,0,0,0,88,137,193,233
.long N_signal_argcount - (.+4)
Index: sys.wth
===================================================================
RCS file: /cvsroot/wisp/wisp/src/native/sys.wth,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- sys.wth 4 Sep 2002 14:35:28 -0000 1.4
+++ sys.wth 7 Sep 2002 21:51:50 -0000 1.5
@@ -9,6 +9,7 @@
(include linux)
(include wisptyp)
+(extern WB_cons_huh)
(extern WB_range)
(extern cons$2)
(extern decsi$1)
@@ -94,6 +95,20 @@
(native sys_ns_mkdir dup 2 = argc drop
swap ws->zt swap decui sys.mkdir (flush) 'encsi$1 jump)
+
+; |sys:ns:nanosleep| returns 0, -errno or (sec . nsec)
+(native sys_ns_nanosleep dup 1 = argc drop
+ dup cons? if
+ untag-cons utdecons swap decui swap decui
+ else
+ 'WB_cons_huh swap go-raise
+ then
+ sys.nanosleep
+ dup negate EINTR = if
+ drop swap encui swap encui (flush) 'cons$2 jump
+ else
+ nip nip (flush) 'encsi$1 jump
+ then)
(native sys_ns_pipe dup 0 = argc drop
sys.pipe dup 0 < if
Index: sys_raw.nasm
===================================================================
RCS file: /cvsroot/wisp/wisp/src/native/sys_raw.nasm,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -d -r1.46 -r1.47
--- sys_raw.nasm 7 Sep 2002 21:51:15 -0000 1.46
+++ sys_raw.nasm 7 Sep 2002 21:51:50 -0000 1.47
@@ -22,4 +22,3 @@
native_syscall read, 3
native_syscall waitpid, 3, untag ecx ; so that a cons can be used
native_syscall write, 3
-native_syscall nanosleep, 2, {untag ebx, ecx}
|