From f2ceb891968886c2e1804b57070fe1376be6d646 Mon Sep 17 00:00:00 2001 From: Marin Ramesa Date: Sun, 8 Dec 2013 12:40:29 +0100 Subject: Use db_addr_t instead of db_expr_t In this way everything falls into place and there is one cast less. Function db_task_printsym() is already always called with the cast to db_addr_t in the first argument. * ddb/db_aout.c (aout_db_line_at_pc): Use db_addr_t instead of db_expr_t. (aout_db_search_by_addr): Don't cast to vm_offset_t. Argument is already db_addr_t. * ddb/db_aout.h (aout_db_line_at_pc): Use db_addr_t instead of db_expr_t. * ddb/db_sym.c (db_task_printsym): Likewise. (db_line_at_pc): Likewise. * ddb/db_sym.h (db_task_printsym): Likewise. (db_line_at_pc): Likewise. * i386/i386/db_trace.c (db_task_printsym): Cast to db_addr_t instead of db_expr_t. Member swap_func is a pointer to void. --- ddb/db_aout.c | 4 ++-- ddb/db_aout.h | 2 +- ddb/db_sym.c | 4 ++-- ddb/db_sym.h | 6 +++--- i386/i386/db_trace.c | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/ddb/db_aout.c b/ddb/db_aout.c index fda7f09..8ef7efb 100644 --- a/ddb/db_aout.c +++ b/ddb/db_aout.c @@ -493,13 +493,13 @@ aout_db_line_at_pc(stab, sym, file, line, pc) db_sym_t sym; char **file; int *line; - db_expr_t pc; + db_addr_t pc; { char *func; unsigned long diff; boolean_t found; - found = aout_db_search_by_addr(stab, (vm_offset_t)pc, file, &func, line, &diff); + found = aout_db_search_by_addr(stab, pc, file, &func, line, &diff); return(found && func && *file); } diff --git a/ddb/db_aout.h b/ddb/db_aout.h index a5a00cc..7c03d36 100644 --- a/ddb/db_aout.h +++ b/ddb/db_aout.h @@ -28,7 +28,7 @@ aout_db_line_at_pc( db_sym_t sym, char **file, int *line, - db_expr_t pc); + db_addr_t pc); extern db_sym_t aout_db_lookup( diff --git a/ddb/db_sym.c b/ddb/db_sym.c index fb0cd96..e801e62 100644 --- a/ddb/db_sym.c +++ b/ddb/db_sym.c @@ -444,7 +444,7 @@ unsigned long db_maxoff = 0x4000; void db_task_printsym(off, strategy, task) - db_expr_t off; + db_addr_t off; db_strategy_t strategy; task_t task; { @@ -489,7 +489,7 @@ db_line_at_pc( sym, filename, linenum, pc) db_sym_t sym; char **filename; int *linenum; - db_expr_t pc; + db_addr_t pc; { return (db_last_symtab) ? X_db_line_at_pc( db_last_symtab, sym, filename, linenum, pc) : diff --git a/ddb/db_sym.h b/ddb/db_sym.h index e3409e2..cb574dd 100644 --- a/ddb/db_sym.h +++ b/ddb/db_sym.h @@ -164,7 +164,7 @@ extern void db_symbol_values( db_symtab_t *stab, extern boolean_t db_eqname( char* src, char* dst, char c ); /* print closest symbol to a value */ -extern void db_task_printsym( db_expr_t off, +extern void db_task_printsym( db_addr_t off, db_strategy_t strategy, task_t task); @@ -205,7 +205,7 @@ extern struct db_sym_switch { db_sym_t sym, char **file, int *line, - db_expr_t pc + db_addr_t pc ); void (*symbol_values)( @@ -235,7 +235,7 @@ extern boolean_t db_line_at_pc( db_sym_t sym, char **filename, int *linenum, - db_expr_t pc); + db_addr_t pc); extern boolean_t aout_db_sym_init( char *symtab, diff --git a/i386/i386/db_trace.c b/i386/i386/db_trace.c index 3a5148a..fb65524 100644 --- a/i386/i386/db_trace.c +++ b/i386/i386/db_trace.c @@ -378,7 +378,7 @@ db_stack_trace_cmd( struct i386_saved_state *iss = &th->pcb->iss; db_printf("Continuation "); - db_task_printsym((db_expr_t)th->swap_func, + db_task_printsym((db_addr_t)th->swap_func, DB_STGY_PROC, th->task); db_printf("\n"); -- cgit v1.2.3