1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-14 15:40:19 +02:00

Finish updating vm.texi

* doc/ref/compiler.texi (Bytecode): Update macro-assembler instructions,
  and move most of them to the instruction set reference.
* doc/ref/vm.texi (A Virtual Machine for Guile, VM Programs): Minor
  fixes.
(Instruction Set): Update for Guile 3 instruction set.
* libguile/vm-engine.c (vm_engine): Update a few instruction
  docstrings.
This commit is contained in:
Andy Wingo 2018-09-30 16:08:40 +02:00
parent 4c53593bbe
commit 4e8d27f0d1
3 changed files with 903 additions and 833 deletions

View file

@ -1382,7 +1382,7 @@ VM_NAME (scm_thread *thread)
NEXT (2);
}
/* call-thread dst:24 IDX:32
/* call-scm<-thread dst:24 IDX:32
*
* Call the SCM-returning instrinsic with index IDX, passing the
* current scm_thread* as argument. Place the SCM result in DST.
@ -1895,8 +1895,8 @@ VM_NAME (scm_thread *thread)
/* scm-ref/tag dst:8 obj:8 tag:8
*
* Reference the first word of OBJ, subtract the immediate TAG, and
* store the resulting SCM to DST.
* Load the first word of OBJ, subtract the immediate TAG, and store
* the resulting SCM to DST.
*/
VM_DEFINE_OP (69, scm_ref_tag, "scm-ref/tag", DOP1 (X8_S8_S8_C8))
{
@ -1909,10 +1909,10 @@ VM_NAME (scm_thread *thread)
NEXT (1);
}
/* scm-ref/tag dst:8 obj:8 tag:8
/* scm-set!/tag obj:8 tag:8 val:8
*
* Reference the first word of OBJ, subtract the immediate TAG, and
* store the resulting SCM to DST.
* Set the first word of OBJ to the SCM value VAL plus the immediate
* value TAG.
*/
VM_DEFINE_OP (70, scm_set_tag, "scm-set!/tag", OP1 (X8_S8_C8_S8))
{
@ -2068,7 +2068,7 @@ VM_NAME (scm_thread *thread)
NEXT (1);
}
/* scm-ref/immediate dst:8 obj:8 idx:8
/* atomic-scm-ref/immediate dst:8 obj:8 idx:8
*
* Atomically reference the SCM object at word offset IDX from local
* OBJ, and store it to DST, using the sequential consistency memory
@ -2805,7 +2805,7 @@ VM_NAME (scm_thread *thread)
NEXT (1);
}
/* =? a:12 b:12
/* heap-numbers-equal? a:12 b:12
*
* Set the comparison result to EQUAL if the SCM values A and B are
* numerically equal, in the sense of "=". Set to NONE otherwise. It