]> gitweb.factorcode.org Git - factor.git/commitdiff
vm: remove some dead code
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Fri, 6 Nov 2009 01:32:26 +0000 (19:32 -0600)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Fri, 6 Nov 2009 01:32:26 +0000 (19:32 -0600)
vm/code_heap.cpp
vm/free_list_allocator.hpp
vm/vm.hpp

index 44a7a54dfa8f0ae51b7517161e90d33673987964..98da158b165cbe0cb011cada864658b8d37e78c5 100755 (executable)
@@ -135,12 +135,6 @@ struct code_heap_relocator {
        }
 };
 
-void factor_vm::relocate_code_heap()
-{
-       code_heap_relocator relocator(this);
-       code->allocator->sweep(relocator);
-}
-
 void factor_vm::primitive_modify_code_heap()
 {
        data_root<array> alist(dpop(),this);
index a4801daa72dce43786074746b844ea8c8f4182d2..62e4e09758fbd6ca7bdb37f0bcdc94cffbeec641 100644 (file)
@@ -23,7 +23,6 @@ template<typename Block> struct free_list_allocator {
        cell largest_free_block();
        cell free_block_count();
        void sweep();
-       template<typename Iterator> void sweep(Iterator &iter);
        template<typename Iterator, typename Sizer> void compact(Iterator &iter, Sizer &sizer);
        template<typename Iterator, typename Sizer> void iterate(Iterator &iter, Sizer &sizer);
        template<typename Iterator> void iterate(Iterator &iter);
@@ -152,59 +151,6 @@ void free_list_allocator<Block>::sweep()
        }
 }
 
-template<typename Block>
-template<typename Iterator>
-void free_list_allocator<Block>::sweep(Iterator &iter)
-{
-       free_blocks.clear_free_list();
-
-       Block *prev = NULL;
-       Block *scan = this->first_block();
-       Block *end = this->last_block();
-
-       while(scan != end)
-       {
-               cell size = scan->size();
-
-               if(scan->free_p())
-               {
-                       if(prev && prev->free_p())
-                       {
-                               free_heap_block *free_prev = (free_heap_block *)prev;
-                               free_prev->make_free(free_prev->size() + size);
-                       }
-                       else
-                               prev = scan;
-               }
-               else if(this->state.marked_p(scan))
-               {
-                       if(prev && prev->free_p())
-                               free_blocks.add_to_free_list((free_heap_block *)prev);
-                       prev = scan;
-                       iter(scan,size);
-               }
-               else
-               {
-                       if(prev && prev->free_p())
-                       {
-                               free_heap_block *free_prev = (free_heap_block *)prev;
-                               free_prev->make_free(free_prev->size() + size);
-                       }
-                       else
-                       {
-                               free_heap_block *free_block = (free_heap_block *)scan;
-                               free_block->make_free(size);
-                               prev = scan;
-                       }
-               }
-
-               scan = (Block *)((cell)scan + size);
-       }
-
-       if(prev && prev->free_p())
-               free_blocks.add_to_free_list((free_heap_block *)prev);
-}
-
 template<typename Block, typename Iterator> struct heap_compactor {
        mark_bits<Block> *state;
        char *address;
index 0a65873f6cbd5e2110f28c1e5c098be61c3c7c69..81dd30000ec201c986e84c9d2e0de28d51335dc0 100755 (executable)
--- a/vm/vm.hpp
+++ b/vm/vm.hpp
@@ -530,7 +530,6 @@ struct factor_vm
        void jit_compile_word(cell word_, cell def_, bool relocate);
        void update_code_heap_words();
        void update_code_heap_words_and_literals();
-       void relocate_code_heap();
        void primitive_modify_code_heap();
        code_heap_room code_room();
        void primitive_code_room();