From 16db3255e750c2d5c218f2a6c8712c2b288e2a0d Mon Sep 17 00:00:00 2001 From: Phil Dawes Date: Mon, 17 Aug 2009 21:37:18 +0100 Subject: [PATCH] removed some global functions from alien.cpp --- vm/alien.cpp | 17 ++++------------- vm/alien.hpp | 2 -- 2 files changed, 4 insertions(+), 15 deletions(-) mode change 100644 => 100755 vm/alien.hpp diff --git a/vm/alien.cpp b/vm/alien.cpp index ffd49f60b0..41a1e8d522 100755 --- a/vm/alien.cpp +++ b/vm/alien.cpp @@ -24,11 +24,6 @@ char *factorvm::pinned_alien_offset(cell obj) } } -char *pinned_alien_offset(cell obj) -{ - return vm->pinned_alien_offset(obj); -} - /* make an alien */ cell factorvm::allot_alien(cell delegate_, cell displacement) { @@ -50,11 +45,6 @@ cell factorvm::allot_alien(cell delegate_, cell displacement) return new_alien.value(); } -cell allot_alien(cell delegate_, cell displacement) -{ - return vm->allot_alien(delegate_,displacement); -} - /* make an alien pointing at an offset of another alien */ inline void factorvm::vmprim_displaced_alien() { @@ -108,15 +98,16 @@ void *alien_pointer() return vm->alien_pointer(); } + /* define words to read/write values at an alien address */ #define DEFINE_ALIEN_ACCESSOR(name,type,boxer,to) \ PRIMITIVE(alien_##name) \ { \ - boxer(*(type*)alien_pointer()); \ + boxer(*(type*)PRIMITIVE_GETVM()->alien_pointer()); \ } \ PRIMITIVE(set_alien_##name) \ { \ - type *ptr = (type *)alien_pointer(); \ + type *ptr = (type *)PRIMITIVE_GETVM()->alien_pointer(); \ type value = to(dpop()); \ *ptr = value; \ } @@ -133,7 +124,7 @@ DEFINE_ALIEN_ACCESSOR(signed_1,s8,box_signed_1,to_fixnum) DEFINE_ALIEN_ACCESSOR(unsigned_1,u8,box_unsigned_1,to_cell) DEFINE_ALIEN_ACCESSOR(float,float,box_float,to_float) DEFINE_ALIEN_ACCESSOR(double,double,box_double,to_double) -DEFINE_ALIEN_ACCESSOR(cell,void *,box_alien,pinned_alien_offset) +DEFINE_ALIEN_ACCESSOR(cell,void *,box_alien,PRIMITIVE_GETVM()->pinned_alien_offset) /* open a native library and push a handle */ inline void factorvm::vmprim_dlopen() diff --git a/vm/alien.hpp b/vm/alien.hpp old mode 100644 new mode 100755 index 6235a2d6c7..0a4f3a7e93 --- a/vm/alien.hpp +++ b/vm/alien.hpp @@ -1,8 +1,6 @@ namespace factor { -cell allot_alien(cell delegate, cell displacement); - PRIMITIVE(displaced_alien); PRIMITIVE(alien_address);