]> gitweb.factorcode.org Git - factor.git/commitdiff
vm: tweak inline_gc() for PowerPC
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Tue, 4 May 2010 10:52:12 +0000 (06:52 -0400)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Tue, 4 May 2010 10:52:30 +0000 (06:52 -0400)
basis/cpu/x86/x86.factor
vm/gc.cpp

index d4a3be49b6df1866b6b8c2625368692d374c0fcd..aa802c76fc5e3fd0be41d46f897c22d501d06ba4 100644 (file)
@@ -45,7 +45,7 @@ HOOK: extra-stack-space cpu ( stack-frame -- n )
 : param@ ( n -- op ) reserved-stack-space + stack@ ;
 
 : gc-root-offsets ( seq -- seq' )
-    [ n>> spill-offset special-offset ] map f like ;
+    [ n>> spill-offset special-offset cell + ] map f like ;
 
 : decr-stack-reg ( n -- )
     dup 0 = [ drop ] [ stack-reg swap SUB ] if ;
index 257a2a556ce71b320846eaeb6916be0c9a280b5d..ed36aff563d727c33e84669d1dc98f79722d5f09 100755 (executable)
--- a/vm/gc.cpp
+++ b/vm/gc.cpp
@@ -217,7 +217,7 @@ void factor_vm::primitive_compact_gc()
 
 void factor_vm::inline_gc(cell gc_roots_)
 {
-       cell stack_pointer = (cell)ctx->callstack_top + sizeof(cell);
+       cell stack_pointer = (cell)ctx->callstack_top;
 
        if(to_boolean(gc_roots_))
        {