Re: [PATCH 4/5] arc: Add disassembler helper

Eli Zaretskii
2017-02-14T15:50:33Z

> From: Anton Kolesov <Anton.Kolesov@synopsys.com>
> Cc: Anton Kolesov <Anton.Kolesov@synopsys.com>, Francois Bedard <Francois.Bedard@synopsys.com>
> Date: Tue, 14 Feb 2017 13:01:29 +0300
>
> Add disassembler helper for GDB, that uses opcodes structure arc_instruction
> and adds convenience functions to handle instruction operands. This interface
> solves at least those problems with arc_instruction:
>
> * Some instructions, like "push_s", have implicit operands which are not
> directly present in arc_instruction.
> * Operands of particular meaning, like branch/jump targets, have various
> locations and meaning depending on type of branch/target.
> * Access to operand value is abstracted into a separate function, so callee
> code shouldn't bother if operand value is an immediate value or in a
> register.
>
> Testcases included in this commit are fairly limited - they test exclusively
> branch instructions, something that will be used in software single stepping.
> Most of the other parts of this disassembler helper are tested during prologue
> analysis testing.
>
> gdb/ChangeLog:
>
> yyyy-mm-dd Anton Kolesov <anton.kolesov@synopsys.com>
>
> * configure.tgt: Add arc-insn.o.
> * arc-tdep.c (arc_delayed_print_insn): Make non-static.
> (dump_arc_instruction_command): New function.
> * arc-tdep.h (arc_delayed_print_insn): Add function declaration.
> * arch/arc-insn.c: New file.
> * arch/arc-insn.h: Likewise.
>
> gdb/doc/ChangeLog:
>
> yyyy-mm-dd Anton Kolesov <anton.kolesov@synopsys.com>
>
> * gdb.texinfo (Synopsys ARC): Add "maint print arc arc-instruction".
>
> gdb/testsuite/ChangeLog:
>
> yyyy-mm-dd Anton Kolesov <anton.kolesov@synopsys.com>
>
> * gdb.arch/arc-decode-insn.S: New file.
> * gdb.arch/arc-decode-insn.exp: Likewise.

OK for the documentation part.

Thanks.