On Mon, Jan 25, 2016 at 04:10:52PM +0100, Martin Pieuchot wrote:
> Removes the abstraction layer to support multiple executable binaries.
> These days all our architectures are ELF and this would allows us to
> reuse the ELF parsing code more easily.
>
> Diff below includes the db_sifting() removal.
>
> ok?
It would be great if others could help mpi@ move forward with this.
The patch is pretty straightforward and looks ok to me, just one
comment below.
> Index: db_elf.c
> ===================================================================
> Index: db_hangman.c
> ===================================================================
ok
> Index: db_sym.c
> ===================================================================
> RCS file: /cvs/src/sys/ddb/db_sym.c,v
> retrieving revision 1.41
> diff -u -p -r1.41 db_sym.c
> --- db_sym.c 25 Jan 2016 14:50:13 -0000 1.41
> +++ db_sym.c 25 Jan 2016 15:02:05 -0000
> @@ -52,30 +52,10 @@ db_symtab_t db_symtabs[MAXNOSYMTABS] = {
>
> db_symtab_t *db_last_symtab;
>
> -static db_forall_func_t db_sift;
> -
> extern char end[];
>
> -/*
> - * Put the most picky symbol table formats at the top!
> - */
> -const db_symformat_t *db_symformats[] = {
> - &db_symformat_elf,
> - NULL,
> -};
> -
> -const db_symformat_t *db_symformat;
> -
> -boolean_t X_db_sym_init(int, void *, void *, const char *);
> -db_sym_t X_db_lookup(db_symtab_t *, char *);
> -db_sym_t X_db_search_symbol(db_symtab_t *, db_addr_t,
> - db_strategy_t, db_expr_t *);
> -void X_db_symbol_values(db_symtab_t *, db_sym_t, char **,
> - db_expr_t *);
> boolean_t X_db_line_at_pc(db_symtab_t *, db_sym_t, char **,
> int *, db_expr_t);
> -int X_db_sym_numargs(db_symtab_t *, db_sym_t, int *,
> - char **);
The X_db_line_at_pc() prototype should also be removed. Otherwise ok
> Index: db_sym.h
> ===================================================================
ok