The x=0 value comes from this hunk of code in vm-engine.c: /* call-scm<-scm-uimm dst:8 a:8 b:8 IDX:32 * * Call the SCM-returning instrinsic with index IDX, passing the SCM * local A and the uint8_t immediate B as arguments. Place the SCM * result in DST. */ VM_DEFINE_OP (53, call_scm_from_scm_uimm, "call-scm<-scm-uimm", DOP2 (X8_S8_S8 _C8, C32)) { uint8_t dst, a, b; SCM res; scm_t_scm_from_scm_uimm_intrinsic intrinsic;
UNPACK_8_8_8 (op, dst, a, b); intrinsic = intrinsics[ip[1]]; SYNC_IP (); res = intrinsic (SP_REF (a), b); CACHE_SP (); SP_SET (dst, res); NEXT (2); } SP_REF (a) evaluates to 0. Regards, Dave -- John David Anglin dave.ang...@bell.net