converted box_* integer functions to use vm (x86 windows)

Phil Dawes 2009-09-02 08:06:00 +01:00
parent e50ab40c78
commit 1f642ab303
2 changed files with 3 additions and 9 deletions

View File

@ -103,14 +103,12 @@ void *alien_pointer()
#define DEFINE_ALIEN_ACCESSOR(name,type,boxer,to) \ #define DEFINE_ALIEN_ACCESSOR(name,type,boxer,to) \
PRIMITIVE(alien_##name) \ PRIMITIVE(alien_##name) \
{ \ { \
factorvm *myvm = PRIMITIVE_GETVM(); \ PRIMITIVE_GETVM()->boxer(*(type*)PRIMITIVE_GETVM()->alien_pointer()); \
myvm->boxer(*(type*)myvm->alien_pointer()); \
} \ } \
PRIMITIVE(set_alien_##name) \ PRIMITIVE(set_alien_##name) \
{ \ { \
factorvm *myvm = PRIMITIVE_GETVM(); \ type *ptr = (type *)PRIMITIVE_GETVM()->alien_pointer(); \
type *ptr = (type *)myvm->alien_pointer(); \ type value = PRIMITIVE_GETVM()->to(dpop()); \
type value = myvm->to(dpop()); \
*ptr = value; \ *ptr = value; \
} }

View File

@ -7,8 +7,4 @@ register cell ds asm("esi");
register cell rs asm("edi"); register cell rs asm("edi");
#define VM_ASM_API VM_C_API __attribute__ ((regparm (2))) #define VM_ASM_API VM_C_API __attribute__ ((regparm (2)))
#undef VM_PTR
#define VM_PTR myvm
#undef ASSERTVM
#define ASSERTVM() assert(vm==myvm)
} }