This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: debugging sh4 in mi mode


Yes.  We're stuck on 5.2.1 for now.  I had seen that everything was
multi-arch and wasn't sure if I was fixing it right.  I'll fix it to match
what's on the head branch.

Thanks,

Kris

----- Original Message -----
From: "Elena Zannoni" <ezannoni@redhat.com>
To: "Kris Warkentin" <kewarken@qnx.com>
Cc: <gdb@sources.redhat.com>
Sent: Friday, November 08, 2002 12:16 PM
Subject: Re: debugging sh4 in mi mode


> Kris Warkentin writes:
>  > We were having a problem when debugging sh4 in mi mode with the
>  > "-data-disassemble" command.  It seems that mi_cmd_disassemble() uses
the
>  > function pointer tm_print_insn which, for sh, was NULL.  I looked at
some
>  > other arches and they seem to set tm_print_insn in their
>  > _initialize_<arch>_tdep() in <arch>-tdep.c so that is what I did to
solve
>  > our problem.  Is this the proper way to do it?
>  >
>
>
> Are you working with an older version of gdb? This should be fixed in
> current CVS. Right now the disassembler functions use
>       ui_file_rewind (stb->stream);
>       pc += TARGET_PRINT_INSN (pc, di);
>       ui_out_field_stream (uiout, "inst", stb);
>
> TARGET_PRINT_INSN is wired into the multiarch machinery, and it will call
> gdb_print_insns_sh:
>
>   set_gdbarch_print_insn (gdbarch, gdb_print_insn_sh);
>
>
> Do you have the above lines in your version of gdb?
>
> Elena
>
>
>  > cheers,
>  >
>  > Kris
>  >
>  > Index: sh-tdep.c
>  > ===================================================================
>  > RCS file: /product/tools/gdb/gdb/sh-tdep.c,v
>  > retrieving revision 1.8
>  > retrieving revision 1.9
>  > diff -c -r1.8 -r1.9
>  > *** sh-tdep.c   17 Sep 2002 18:31:22 -0000      1.8
>  > --- sh-tdep.c   8 Nov 2002 16:33:39 -0000       1.9
>  > ***************
>  > *** 2207,2211 ****
>  > --- 2207,2214 ----
>  >
>  >     register_gdbarch_init (bfd_arch_sh, sh_gdbarch_init);
>  >
>  > +   if(!tm_print_insn)
>  > +         tm_print_insn = gdb_print_insn_sh;
>  > +
>  >     add_com ("regs", class_vars, sh_show_regs_command, "Print all
>  > registers");
>  >   }
>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]