Module Name: src Committed By: matt Date: Sat Jun 6 22:19:07 UTC 2015
Modified Files: src/sys/arch/mips/include: db_machdep.h src/sys/arch/mips/mips: db_disasm.c db_interface.c db_trace.c Log Message: Make db_expr_t long long when using the N32 ABI. To generate a diff of this commit: cvs rdiff -u -r1.28 -r1.29 src/sys/arch/mips/include/db_machdep.h cvs rdiff -u -r1.27 -r1.28 src/sys/arch/mips/mips/db_disasm.c cvs rdiff -u -r1.76 -r1.77 src/sys/arch/mips/mips/db_interface.c cvs rdiff -u -r1.42 -r1.43 src/sys/arch/mips/mips/db_trace.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/mips/include/db_machdep.h diff -u src/sys/arch/mips/include/db_machdep.h:1.28 src/sys/arch/mips/include/db_machdep.h:1.29 --- src/sys/arch/mips/include/db_machdep.h:1.28 Sat Jul 9 16:58:05 2011 +++ src/sys/arch/mips/include/db_machdep.h Sat Jun 6 22:19:07 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: db_machdep.h,v 1.28 2011/07/09 16:58:05 matt Exp $ */ +/* $NetBSD: db_machdep.h,v 1.29 2015/06/06 22:19:07 matt Exp $ */ /* * Copyright (c) 1997 Jonathan Stone (hereinafter referred to as the author) @@ -46,8 +46,13 @@ #endif typedef vaddr_t db_addr_t; /* address - unsigned */ +#ifdef __mips_n32 +#define DDB_EXPR_FMT "ll" /* expression is long long */ +typedef int64_t db_expr_t; /* expression - signed */ +#else #define DDB_EXPR_FMT "l" /* expression is long */ typedef long db_expr_t; /* expression - signed */ +#endif typedef struct reg db_regs_t; Index: src/sys/arch/mips/mips/db_disasm.c diff -u src/sys/arch/mips/mips/db_disasm.c:1.27 src/sys/arch/mips/mips/db_disasm.c:1.28 --- src/sys/arch/mips/mips/db_disasm.c:1.27 Sat Jun 6 04:32:47 2015 +++ src/sys/arch/mips/mips/db_disasm.c Sat Jun 6 22:19:07 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: db_disasm.c,v 1.27 2015/06/06 04:32:47 matt Exp $ */ +/* $NetBSD: db_disasm.c,v 1.28 2015/06/06 22:19:07 matt Exp $ */ /*- * Copyright (c) 1991, 1993 @@ -35,7 +35,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: db_disasm.c,v 1.27 2015/06/06 04:32:47 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: db_disasm.c,v 1.28 2015/06/06 22:19:07 matt Exp $"); #include <sys/param.h> #include <sys/cpu.h> @@ -820,7 +820,7 @@ print_addr(db_addr_t loc) if (diff == 0) db_printf("%s", symname); else - db_printf("<%s+%lx>", symname, diff); + db_printf("<%s+%"DDB_EXPR_FMT"x>", symname, diff); db_printf("\t[addr:%#"PRIxVADDR"]", loc); } else { db_printf("%#"PRIxVADDR, loc); Index: src/sys/arch/mips/mips/db_interface.c diff -u src/sys/arch/mips/mips/db_interface.c:1.76 src/sys/arch/mips/mips/db_interface.c:1.77 --- src/sys/arch/mips/mips/db_interface.c:1.76 Sat Jun 6 04:38:52 2015 +++ src/sys/arch/mips/mips/db_interface.c Sat Jun 6 22:19:07 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: db_interface.c,v 1.76 2015/06/06 04:38:52 matt Exp $ */ +/* $NetBSD: db_interface.c,v 1.77 2015/06/06 22:19:07 matt Exp $ */ /* * Mach Operating System @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: db_interface.c,v 1.76 2015/06/06 04:38:52 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: db_interface.c,v 1.77 2015/06/06 22:19:07 matt Exp $"); #include "opt_multiprocessor.h" #include "opt_cputype.h" /* which mips CPUs do we support? */ @@ -290,7 +290,7 @@ db_kvtophys_cmd(db_expr_t addr, bool hav * Cast the physical address -- some platforms, while * being ILP32, may be using 64-bit paddr_t's. */ - db_printf("0x%lx -> 0x%" PRIx64 "\n", addr, + db_printf("0x%" DDB_EXPR_FMT "x -> 0x%" PRIx64 "\n", addr, (uint64_t) kvtophys(addr)); } else printf("not a kernel virtual address\n"); Index: src/sys/arch/mips/mips/db_trace.c diff -u src/sys/arch/mips/mips/db_trace.c:1.42 src/sys/arch/mips/mips/db_trace.c:1.43 --- src/sys/arch/mips/mips/db_trace.c:1.42 Fri Apr 29 22:14:59 2011 +++ src/sys/arch/mips/mips/db_trace.c Sat Jun 6 22:19:07 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: db_trace.c,v 1.42 2011/04/29 22:14:59 matt Exp $ */ +/* $NetBSD: db_trace.c,v 1.43 2015/06/06 22:19:07 matt Exp $ */ /* * Mach Operating System @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: db_trace.c,v 1.42 2011/04/29 22:14:59 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: db_trace.c,v 1.43 2015/06/06 22:19:07 matt Exp $"); #include "opt_ddb.h" @@ -169,7 +169,7 @@ db_stack_trace_print(db_expr_t addr, boo } if (lwpaddr) { - l = (struct lwp *)addr; + l = (struct lwp *)(intptr_t)addr; (*pr)("pid %d.%d ", l->l_proc->p_pid, l->l_lid); } else { /* "trace/t" */