Update of /cvsroot/wisp/wisp/src/native
In directory usw-pr-cvs1:/tmp/cvs-serv4805/src/native
Modified Files:
strings.nasm
Log Message:
Made |c8string-length| not work in setter context.
Index: strings.nasm
===================================================================
RCS file: /cvsroot/wisp/wisp/src/native/strings.nasm,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -d -r1.49 -r1.50
--- strings.nasm 26 Aug 2002 16:18:24 -0000 1.49
+++ strings.nasm 31 Aug 2002 14:29:05 -0000 1.50
@@ -196,40 +196,11 @@
; }}}
; {{{ |c8string-length|
-native c8string_length, any
- cmp ecx, byte -2
- jz c8string_length$s2
- cmp ecx, 1
- jnz near N_signal_argcount
-global c8string_length$1
-c8string_length$1:
+native c8string_length, 1
pop eax
req_c8string eax
mov eax, c8string#length(eax)
encui eax
- ret
-global c8string_length$2
-c8string_length$s2:
- mov eax, [esp]
- decui eax
- mov [esp], eax
- mov ecx, eax
- mov eax, [esp + 4]
- req_c8string eax
- push dword c8string#length(eax)
- ; stack: string new-length old-length
- gcall realloc$2, c8string#body(eax), ecx
- pop ebx ; old-length
- pop ecx ; new-length
- pop edx ; string
- mov c8string#body(edx), eax
- mov c8string#length(edx), ecx
- sub ecx, ebx
- if nc ; new-length > old-length ?
- add eax, ebx
- gcall memset$3, eax, CHAR(0), ecx
- endif
- mov eax, VOID
ret
; }}}
|