1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-30 20:00:19 +02:00

VM calls out to heap-numbers-equal? through intrinsics

* libguile/numbers.h:
* libguile/eq.c (scm_i_heap_numbers_equal_p): Change to return boolean
  directly instead of tagged Scheme value.
  (scm_eqv_p): Adapt caller of scm_i_heap_numbers_equal_p.
* libguile/intrinsics.c (scm_bootstrap_intrinsics):
* libguile/intrinsics.h (SCM_FOR_ALL_VM_INTRINSICS): Declare
  heap-numbers-equal? intrinsic.
* libguile/vm-engine.c (heap-numbers-equal?): Call out through the
  intrinsics table.
This commit is contained in:
Andy Wingo 2018-05-08 11:49:46 +02:00
parent 84cb7c45fd
commit 41bc98985f
5 changed files with 12 additions and 9 deletions

View file

@ -3141,7 +3141,7 @@ VM_NAME (scm_i_thread *thread, struct scm_vm *vp,
y = SP_REF (b);
SYNC_IP ();
if (scm_is_true (scm_i_heap_numbers_equal_p (x, y)))
if (scm_vm_intrinsics.heap_numbers_equal_p (x, y))
vp->compare_result = SCM_F_COMPARE_EQUAL;
else
vp->compare_result = SCM_F_COMPARE_NONE;