X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Fbacktrace.c;h=18f93a021c4a2fce6a2c98e68b8fa28a5651b9eb;hb=4ae1b794a5d6a90794468cf8017f5307f2c30dfe;hp=e43f96d0d23ef1841f764d430f585d7c29d6458e;hpb=f143939b1dbaf38ebd4f92c851fbc4ecddf37af1;p=sbcl.git diff --git a/src/runtime/backtrace.c b/src/runtime/backtrace.c index e43f96d..18f93a0 100644 --- a/src/runtime/backtrace.c +++ b/src/runtime/backtrace.c @@ -66,14 +66,14 @@ code_pointer(lispobj object) headerp = (lispobj *) native_pointer(object); header = *headerp; - type = TypeOf(header); + type = widetag_of(header); switch (type) { - case type_CodeHeader: + case CODE_HEADER_WIDETAG: break; - case type_ReturnPcHeader: - case type_SimpleFunHeader: - case type_ClosureFunHeader: + case RETURN_PC_HEADER_WIDETAG: + case SIMPLE_FUN_HEADER_WIDETAG: + case CLOSURE_FUN_HEADER_WIDETAG: len = HEADER_LENGTH(header); if (len == 0) headerp = NULL; @@ -90,7 +90,6 @@ code_pointer(lispobj object) static boolean cs_valid_pointer_p(struct call_frame *pointer) { - /* lose("stub: hasn't been updated for X86"); */ return (((char *) CONTROL_STACK_START <= (char *) pointer) && ((char *) pointer < (char *) current_control_stack_pointer)); } @@ -113,8 +112,8 @@ call_info_from_context(struct call_info *info, os_context_t *context) unsigned long pc; info->interrupted = 1; - if (LowtagOf(*os_context_register_addr(context, reg_CODE)) - == type_FunPointer) { + if (lowtag_of(*os_context_register_addr(context, reg_CODE)) + == FUN_POINTER_LOWTAG) { /* We tried to call a function, but crapped out before $CODE could * be fixed up. Probably an undefined function. */ info->frame = @@ -207,7 +206,7 @@ backtrace(int nframes) if (info.code != (struct code *) 0) { lispobj function; - printf("CODE: 0x%08X, ", (unsigned long) info.code | type_OtherPointer); + printf("CODE: 0x%08X, ", (unsigned long) info.code | OTHER_POINTER_LOWTAG); #ifndef alpha function = info.code->entry_points; @@ -221,18 +220,18 @@ backtrace(int nframes) header = (struct simple_fun *) native_pointer(function); name = header->name; - if (LowtagOf(name) == type_OtherPointer) { + if (lowtag_of(name) == OTHER_POINTER_LOWTAG) { lispobj *object; object = (lispobj *) native_pointer(name); - if (TypeOf(*object) == type_SymbolHeader) { + if (widetag_of(*object) == SYMBOL_HEADER_WIDETAG) { struct symbol *symbol; symbol = (struct symbol *) object; object = (lispobj *) native_pointer(symbol->name); } - if (TypeOf(*object) == type_SimpleString) { + if (widetag_of(*object) == SIMPLE_STRING_WIDETAG) { struct vector *string; string = (struct vector *) object;