[Wisp-cvs] wisp/src/native sys.s,1.3,1.4 sys.wth,1.4,1.5 sys_raw.nasm,1.46,1.47
Status: Alpha
Brought to you by:
digg
From: <di...@us...> - 2002-09-07 21:51:53
|
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} |