3 factor::cell userenv[USER_ENV];
12 fixnum e = untag_fixnum(dpeek());
18 fixnum e = untag_fixnum(dpop());
25 exit(to_fixnum(dpop()));
30 box_unsigned_8(current_micros());
35 sleep_micros(to_cell(dpop()));
40 fixnum slot = untag_fixnum(dpop());
41 object *obj = untag<object>(dpop());
44 obj->slots()[slot] = value;
48 PRIMITIVE(load_locals)
50 fixnum count = untag_fixnum(dpop());
51 memcpy((cell *)(rs + sizeof(cell)),(cell *)(ds - sizeof(cell) * (count - 1)),sizeof(cell) * count);
52 ds -= sizeof(cell) * count;
53 rs += sizeof(cell) * count;
56 static cell clone_object(cell obj_)
58 gc_root<object> obj(obj_);
60 if(immediate_p(obj.value()))
64 cell size = object_size(obj.value());
65 object *new_obj = allot_object(obj.type(),size);
66 memcpy(new_obj,obj.untagged(),size);
67 return tag_dynamic(new_obj);
73 drepl(clone_object(dpeek()));