17 typedef char symbol_char;
19 #define STRING_LITERAL(string) string
23 #define STRNCMP strncmp
28 #define FIXNUM_FORMAT "%ld"
29 #define CELL_FORMAT "%lu"
30 #define CELL_HEX_FORMAT "%lx"
33 #define CELL_HEX_PAD_FORMAT "%016lx"
35 #define CELL_HEX_PAD_FORMAT "%08lx"
38 #define FIXNUM_FORMAT "%ld"
40 #define OPEN_READ(path) fopen(path,"rb")
41 #define OPEN_WRITE(path) fopen(path,"wb")
43 #define print_native_string(string) print_string(string)
45 typedef pthread_t THREADHANDLE;
47 THREADHANDLE start_thread(void *(*start_routine)(void *),void *args);
48 inline static THREADHANDLE thread_id() { return pthread_self(); }
50 void unix_init_signals();
51 void signal_handler(int signal, siginfo_t* siginfo, void* uap);
52 void dump_stack_signal(int signal, siginfo_t* siginfo, void* uap);
55 void sleep_micros(cell usec);
57 void init_platform_globals();
59 void register_vm_with_thread(factor_vm *vm);