#define DEFINE_ALIEN_ACCESSOR(name,type,boxer,to) \
PRIMITIVE(alien_##name) \
{ \
- factorvm *myvm = PRIMITIVE_GETVM(); \
- myvm->boxer(*(type*)myvm->alien_pointer()); \
+ PRIMITIVE_GETVM()->boxer(*(type*)PRIMITIVE_GETVM()->alien_pointer()); \
} \
PRIMITIVE(set_alien_##name) \
{ \
- factorvm *myvm = PRIMITIVE_GETVM(); \
- type *ptr = (type *)myvm->alien_pointer(); \
- type value = myvm->to(dpop()); \
+ type *ptr = (type *)PRIMITIVE_GETVM()->alien_pointer(); \
+ type value = PRIMITIVE_GETVM()->to(dpop()); \
*ptr = value; \
}
register cell rs asm("edi");
#define VM_ASM_API VM_C_API __attribute__ ((regparm (2)))
-#undef VM_PTR
-#define VM_PTR myvm
-#undef ASSERTVM
-#define ASSERTVM() assert(vm==myvm)
}