[Wisp-cvs] wisp/src/native boxes.s,1.10,1.11 boxes.wth,1.6,1.7 misc.s,1.7,1.8 misc.wth,1.7,1.8 recor
Status: Alpha
Brought to you by:
digg
From: <di...@us...> - 2002-09-18 21:10:05
|
Update of /cvsroot/wisp/wisp/src/native In directory usw-pr-cvs1:/tmp/cvs-serv32183/src/native Modified Files: boxes.s boxes.wth misc.s misc.wth records.nasm wstrings.s wstrings.wth Log Message: Added the |read-char| and |write-char| dispatcher slots to record types. Index: boxes.s =================================================================== RCS file: /cvsroot/wisp/wisp/src/native/boxes.s,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- boxes.s 18 Sep 2002 21:09:00 -0000 1.10 +++ boxes.s 18 Sep 2002 21:10:03 -0000 1.11 @@ -69,4 +69,5 @@ .long NN_box_ref .byte 19,0,0,0 .long NN_make_box +.byte 19,0,0,0,19,0,0,0 .global RT_box Index: boxes.wth =================================================================== RCS file: /cvsroot/wisp/wisp/src/native/boxes.wth,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- boxes.wth 18 Sep 2002 21:09:00 -0000 1.6 +++ boxes.wth 18 Sep 2002 21:10:03 -0000 1.7 @@ -14,7 +14,9 @@ (tetra NN_box_huh) (tetra NN_box_ref) (tetra 19) ; FALSE - (tetra NN_make_box)) + (tetra NN_make_box) + (tetra 19) ; FALSE + (tetra 19)) ; FALSE (extern RT_box) (extern WB_undefined) Index: misc.s =================================================================== RCS file: /cvsroot/wisp/wisp/src/native/misc.s,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- misc.s 18 Sep 2002 21:09:00 -0000 1.7 +++ misc.s 18 Sep 2002 21:10:03 -0000 1.8 @@ -123,6 +123,24 @@ .equiv NN_record_type_length, N_record_type_length + 1 .section .text .align 16 +N_pr_record_type_write_char_slot: +.byte 144,187,7,0,0,0,186 +.long RT_record_type +.byte 233 +.long slot_accessor_body - (.+4) +.global N_pr_record_type_write_char_slot,NN_pr_record_type_write_char_slot +.equiv NN_pr_record_type_write_char_slot, N_pr_record_type_write_char_slot + 1 +.section .text +.align 16 +N_pr_record_type_read_char_slot: +.byte 144,187,6,0,0,0,186 +.long RT_record_type +.byte 233 +.long slot_accessor_body - (.+4) +.global N_pr_record_type_read_char_slot,NN_pr_record_type_read_char_slot +.equiv NN_pr_record_type_read_char_slot, N_pr_record_type_read_char_slot + 1 +.section .text +.align 16 N_pr_record_type_new_slot: .byte 144,187,5,0,0,0,186 .long RT_record_type @@ -168,11 +186,11 @@ .align 16 RT_record_type: .long RT_record_type -.byte 5,0,0,0 +.byte 7,0,0,0 .long NN_record_type_huh .byte 19,0,0,0 .long NN_record_type_length -.byte 19,0,0,0 +.byte 19,0,0,0,19,0,0,0,19,0,0,0 .global RT_record_type .section .text .align 16 Index: misc.wth =================================================================== RCS file: /cvsroot/wisp/wisp/src/native/misc.wth,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- misc.wth 18 Sep 2002 21:09:00 -0000 1.7 +++ misc.wth 18 Sep 2002 21:10:03 -0000 1.8 @@ -33,11 +33,13 @@ (assemble RT_record_type (tetra RT_record_type) ; type pointer - (tetra 5) ; slot count + (tetra 7) ; slot count (tetra NN_record_type_huh) ; discriminator (tetra 19) ; FALSE ; |ref| (tetra NN_record_type_length) ; |length| - (tetra 19)) ; FALSE ; |new| + (tetra 19) ; FALSE ; |new| + (tetra 19) ; FALSE ; |read-char| + (tetra 19)) ; FALSE ; |write-char| (native record_type_huh 'RT_record_type go-discriminate) @@ -57,6 +59,12 @@ (native pr_record_type_new_slot 'RT_record_type 5 go-access-slot) + +(native pr_record_type_read_char_slot + 'RT_record_type 6 go-access-slot) + +(native pr_record_type_write_char_slot + 'RT_record_type 7 go-access-slot) (native record_type_length dup 1 = argc drop dup get-type 'RT_record_type = if Index: records.nasm =================================================================== RCS file: /cvsroot/wisp/wisp/src/native/records.nasm,v retrieving revision 1.34 retrieving revision 1.35 diff -u -d -r1.34 -r1.35 --- records.nasm 18 Sep 2002 21:09:00 -0000 1.34 +++ records.nasm 18 Sep 2002 21:10:03 -0000 1.35 @@ -28,7 +28,7 @@ mov [esp], eax mov edx, RT_record_type ; we don't have a discriminator yet - gcall record_constructor_body, eax, FALSE, FALSE, FALSE, FALSE + gcall record_constructor_body, eax, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE push eax ; stack: (slot-count record-type) valloc 6 Index: wstrings.s =================================================================== RCS file: /cvsroot/wisp/wisp/src/native/wstrings.s,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- wstrings.s 18 Sep 2002 21:09:00 -0000 1.5 +++ wstrings.s 18 Sep 2002 21:10:03 -0000 1.6 @@ -35,4 +35,5 @@ .long NN_c16string_ref .byte 19,0,0,0 .long NN_make_c16string +.byte 19,0,0,0,19,0,0,0 .global RT_c16string Index: wstrings.wth =================================================================== RCS file: /cvsroot/wisp/wisp/src/native/wstrings.wth,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- wstrings.wth 18 Sep 2002 21:09:00 -0000 1.5 +++ wstrings.wth 18 Sep 2002 21:10:03 -0000 1.6 @@ -14,7 +14,9 @@ (tetra NN_c16string_huh) (tetra NN_c16string_ref) (tetra 19) ; FALSE - (tetra NN_make_c16string)) ; FALSE + (tetra NN_make_c16string) ; FALSE + (tetra 19) ; FALSE + (tetra 19)) ; FALSE (extern RT_c16string) (extern WB_range) |