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" */

Reply via email to