diff --git a/bin/ikarus b/bin/ikarus index a8c78c8..021220d 100755 Binary files a/bin/ikarus and b/bin/ikarus differ diff --git a/bin/ikarus-flonums.c b/bin/ikarus-flonums.c index 46069cd..cc0cb55 100644 --- a/bin/ikarus-flonums.c +++ b/bin/ikarus-flonums.c @@ -80,6 +80,14 @@ ikrt_fl_sqrt(ikp x, ikpcb* pcb){ return r; } +ikp +ikrt_fl_log(ikp x, ikpcb* pcb){ + ikp r = ik_alloc(pcb, flonum_size) + vector_tag; + ref(r, -vector_tag) = (ikp)flonum_tag; + flonum_data(r) = log(flonum_data(x)); + return r; +} + @@ -127,6 +135,17 @@ ikrt_fx_atan(ikp x, ikpcb* pcb){ return r; } +ikp +ikrt_fx_log(ikp x, ikpcb* pcb){ + ikp r = ik_alloc(pcb, flonum_size) + vector_tag; + ref(r, -vector_tag) = (ikp)flonum_tag; + flonum_data(r) = log(unfix(x)); + return r; +} + + + + ikp ikrt_flonum_to_bytevector(ikp x, ikp bv, ikpcb* pcb){ if(tagof(x) == vector_tag){