]> gitweb.factorcode.org Git - factor.git/commitdiff
Dev checkpoint
authorPhil Dawes <phil@phildawes.net>
Mon, 17 Aug 2009 20:37:15 +0000 (21:37 +0100)
committerPhil Dawes <phil@phildawes.net>
Wed, 16 Sep 2009 07:16:26 +0000 (08:16 +0100)
vm/data_heap.cpp
vm/vm.hpp

index 020954bf05ddfaf77067dd0654ce899afdc67f4f..e484a18b7a58066de210163b3e81bc15a96403ef 100755 (executable)
@@ -237,7 +237,7 @@ void init_data_heap(cell gens,cell young_size,cell aging_size,cell tenured_size,
 }
 
 /* Size of the object pointed to by a tagged pointer */
-cell object_size(cell tagged)
+cell factorvm::object_size(cell tagged)
 {
        if(immediate_p(tagged))
                return 0;
@@ -245,6 +245,11 @@ cell object_size(cell tagged)
                return untagged_object_size(untag<object>(tagged));
 }
 
+cell object_size(cell tagged)
+{
+       return vm->object_size(tagged);
+}
+
 /* Size of the object pointed to by an untagged pointer */
 cell factorvm::untagged_object_size(object *pointer)
 {
index 1ed6d965bc7ee5d98fee26408cb7b8972654a6ff..3aab1061ff3d5e02850af850f120b2db06e36ac7 100644 (file)
--- a/vm/vm.hpp
+++ b/vm/vm.hpp
@@ -154,6 +154,9 @@ struct factorvm {
        inline void vmprim_end_scan();
        template<typename T> void each_object(T &functor);
        cell find_all_words();
+       cell object_size(cell tagged);
+       // next method here:
+
        
        //write barrier
        inline card *addr_to_card(cell a);
@@ -412,7 +415,6 @@ struct factorvm {
        inline double fixnum_to_float(cell tagged);
        template <typename T> T *untag_check(cell value);
        template <typename T> T *untag(cell value);
-       // next method here:
        
        //io
        void init_c_io();