diff options
author | Andy Wingo <wingo@pobox.com> | 2017-03-09 17:22:08 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2017-03-09 17:24:06 +0100 |
commit | c525aa6d95a9e19b260d6b99dbf6d73939d76585 (patch) | |
tree | 579660b1a34b147b3b132b2c64f1e6807dbe3dd5 /doc | |
parent | f71c2c12609abfac9af7d38ea99f89a1f51b6992 (diff) |
VM support for string-set!; slimmer read-string
* doc/ref/vm.texi (Inlined Scheme Instructions): Add string-set!.
* libguile/vm-engine.c (string-set!): New opcode.
* module/ice-9/rdelim.scm (read-string): Reimplement in terms of a
geometrically growing list of strings, to reduce total heap usage when
reading big files.
* module/language/cps/compile-bytecode.scm (compile-function): Add
string-set! support.
* module/language/cps/types.scm (string-set!): Update for &u64 index.
* module/language/tree-il/compile-cps.scm (convert): Unbox index to
string-set!.
* module/system/vm/assembler.scm (system): Export string-set!.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/ref/vm.texi | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/doc/ref/vm.texi b/doc/ref/vm.texi index 4e42bb94c..ac3889f41 100644 --- a/doc/ref/vm.texi +++ b/doc/ref/vm.texi @@ -1355,6 +1355,12 @@ and store it in @var{dst}. The @var{idx} value should be an unboxed unsigned 64-bit integer. @end deftypefn +@deftypefn Instruction {} string-set! s8:@var{dst} s8:@var{idx} s8:@var{src} +Store the character @var{src} into the string @var{dst} at index +@var{idx}. The @var{idx} value should be an unboxed unsigned 64-bit +integer. +@end deftypefn + @deftypefn Instruction {} cons s8:@var{dst} s8:@var{car} s8:@var{cdr} Cons @var{car} and @var{cdr}, and store the result in @var{dst}. @end deftypefn |