guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] 03/04: Minor VM fixes


From: Andy Wingo
Subject: [Guile-commits] 03/04: Minor VM fixes
Date: Fri, 10 Jun 2016 13:36:11 +0000 (UTC)

wingo pushed a commit to branch master
in repository guile.

commit d1b99ea2aee299643a027066a33632da0b623f26
Author: Andy Wingo <address@hidden>
Date:   Fri Jun 10 08:23:04 2016 +0200

    Minor VM fixes
    
    * libguile/vm-engine.c (string-ref): Unpack the index into a 64-bit
      integer.
      (br-if-u64-<-scm): Tighten up the fast path.
---
 libguile/vm-engine.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libguile/vm-engine.c b/libguile/vm-engine.c
index 018f32f..078e078 100644
--- a/libguile/vm-engine.c
+++ b/libguile/vm-engine.c
@@ -2239,7 +2239,7 @@ VM_NAME (scm_i_thread *thread, struct scm_vm *vp,
     {
       scm_t_uint8 dst, src, idx;
       SCM str;
-      scm_t_uint32 c_idx;
+      scm_t_uint64 c_idx;
 
       UNPACK_8_8_8 (op, dst, src, idx);
       str = SP_REF (src);
@@ -3700,7 +3700,7 @@ VM_NAME (scm_i_thread *thread, struct scm_vm *vp,
    */
   VM_DEFINE_OP (171, br_if_u64_lt_scm, "br-if-u64-<-scm", OP3 (X8_S24, X8_S24, 
B1_X7_L24))
     {
-      BR_U64_SCM_COMPARISON(x, y, y >= 0 && (scm_t_uint64) y > x, scm_less_p);
+      BR_U64_SCM_COMPARISON(x, y, y > 0 && (scm_t_uint64) y > x, scm_less_p);
     }
 
   /* br-if-u64-=-scm a:24 _:8 b:24 invert:1 _:7 offset:24



reply via email to

[Prev in Thread] Current Thread [Next in Thread]