For include/opcode:
* d30v.h: Fix declaration of reg_name_cnt. * d10v.h: Fix declaration of d10v_reg_name_cnt. * arc.h: Add prototypes from opcodes/arc-opc.c. For opcodes: * tic54x-dis.c: Add unused attributes where needed. * z8k-dis.c (output_instr): Add unused attribute. * h8300-dis.c: Add missing prototypes. (bfd_h8_disassemble): Make static. * cris-dis.c: Add missing prototype. * h8500-dis.c: Likewise. * m68hc11-dis.c: Likewise. * pj-dis.c: Likewise. * tic54x-dis.c: Likewise. * v850-dis.c: Likewise. * vax-dis.c: Likewise. * w65-dis.c: Likewise. * z8k-dis.c: Likewise. * d10v-dis.c: Add missing prototype. (dis_long): Remove unused variable. (dis_2_short): Likewise. * sh-dis.c: Add missing prototypes. * v850-opc.c: Likewise. Add unused attributes where needed. * ns32k-dis.c: Add missing prototypes. (bit_extract_simple): Remove unused variable.
This commit is contained in:
parent
24a35864ab
commit
d83c654853
|
@ -1,3 +1,11 @@
|
||||||
|
2001-08-25 Andreas Jaeger <aj@suse.de>
|
||||||
|
|
||||||
|
* d30v.h: Fix declaration of reg_name_cnt.
|
||||||
|
|
||||||
|
* d10v.h: Fix declaration of d10v_reg_name_cnt.
|
||||||
|
|
||||||
|
* arc.h: Add prototypes from opcodes/arc-opc.c.
|
||||||
|
|
||||||
2001-08-16 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
|
2001-08-16 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
|
||||||
|
|
||||||
* mips.h (INSN_10000): Define.
|
* mips.h (INSN_10000): Define.
|
||||||
|
@ -223,14 +231,14 @@
|
||||||
CPU_R5000, CPU_R6000, CPU_R8000, CPU_R10000, CPU_MIPS32, CPU_4K,
|
CPU_R5000, CPU_R6000, CPU_R8000, CPU_R10000, CPU_MIPS32, CPU_4K,
|
||||||
CPU_4KC, CPU_4KM, CPU_4KP): Define..
|
CPU_4KC, CPU_4KM, CPU_4KP): Define..
|
||||||
(OPCODE_IS_MEMBER): Use new defines.
|
(OPCODE_IS_MEMBER): Use new defines.
|
||||||
(OP_MASK_SEL, OP_SH_SEL): Define.
|
(OP_MASK_SEL, OP_SH_SEL): Define.
|
||||||
(OP_MASK_CODE20, OP_SH_CODE20): Define.
|
(OP_MASK_CODE20, OP_SH_CODE20): Define.
|
||||||
Add 'P' to used characters.
|
Add 'P' to used characters.
|
||||||
Use 'H' for coprocessor select field.
|
Use 'H' for coprocessor select field.
|
||||||
Use 'm' for 20 bit breakpoint code.
|
Use 'm' for 20 bit breakpoint code.
|
||||||
Document new arg characters and add to used characters.
|
Document new arg characters and add to used characters.
|
||||||
(INSN_MIPS32): New define for MIPS32 extensions.
|
(INSN_MIPS32): New define for MIPS32 extensions.
|
||||||
(OPCODE_IS_MEMBER): Recognize MIPS32 instructions.
|
(OPCODE_IS_MEMBER): Recognize MIPS32 instructions.
|
||||||
|
|
||||||
2000-09-05 Alan Modra <alan@linuxcare.com.au>
|
2000-09-05 Alan Modra <alan@linuxcare.com.au>
|
||||||
|
|
||||||
|
@ -811,16 +819,16 @@ Mon Feb 1 21:09:14 1999 Catherine Moore <clm@cygnus.com>
|
||||||
Wed Dec 9 10:38:48 1998 David Taylor <taylor@texas.cygnus.com>
|
Wed Dec 9 10:38:48 1998 David Taylor <taylor@texas.cygnus.com>
|
||||||
|
|
||||||
The following is part of a change made by Edith Epstein
|
The following is part of a change made by Edith Epstein
|
||||||
<eepstein@sophia.cygnus.com> as part of a project to merge in
|
<eepstein@sophia.cygnus.com> as part of a project to merge in
|
||||||
changes by HP; HP did not create ChangeLog entries.
|
changes by HP; HP did not create ChangeLog entries.
|
||||||
|
|
||||||
* hppa.h (completer_chars): list of chars to not put a space
|
* hppa.h (completer_chars): list of chars to not put a space
|
||||||
after.
|
after.
|
||||||
|
|
||||||
Sun Dec 6 13:21:34 1998 Ian Lance Taylor <ian@cygnus.com>
|
Sun Dec 6 13:21:34 1998 Ian Lance Taylor <ian@cygnus.com>
|
||||||
|
|
||||||
* i386.h (i386_optab): Permit w suffix on processor control and
|
* i386.h (i386_optab): Permit w suffix on processor control and
|
||||||
status word instructions.
|
status word instructions.
|
||||||
|
|
||||||
1998-11-30 Doug Evans <devans@casey.cygnus.com>
|
1998-11-30 Doug Evans <devans@casey.cygnus.com>
|
||||||
|
|
||||||
|
@ -1540,9 +1548,9 @@ Mon Nov 4 12:52:48 1996 Jeffrey A Law (law@cygnus.com)
|
||||||
Fri Nov 1 10:31:02 1996 Richard Henderson <rth@tamu.edu>
|
Fri Nov 1 10:31:02 1996 Richard Henderson <rth@tamu.edu>
|
||||||
|
|
||||||
* alpha.h: Don't include "bfd.h"; private relocation types are now
|
* alpha.h: Don't include "bfd.h"; private relocation types are now
|
||||||
negative to minimize problems with shared libraries. Organize
|
negative to minimize problems with shared libraries. Organize
|
||||||
instruction subsets by AMASK extensions and PALcode
|
instruction subsets by AMASK extensions and PALcode
|
||||||
implementation.
|
implementation.
|
||||||
(struct alpha_operand): Move flags slot for better packing.
|
(struct alpha_operand): Move flags slot for better packing.
|
||||||
|
|
||||||
Tue Oct 29 12:19:10 1996 Jeffrey A Law (law@cygnus.com)
|
Tue Oct 29 12:19:10 1996 Jeffrey A Law (law@cygnus.com)
|
||||||
|
@ -1595,9 +1603,9 @@ Fri Aug 23 10:39:08 1996 Jeffrey A Law (law@cygnus.com)
|
||||||
Thu Aug 22 16:51:25 1996 J.T. Conklin <jtc@rtl.cygnus.com>
|
Thu Aug 22 16:51:25 1996 J.T. Conklin <jtc@rtl.cygnus.com>
|
||||||
|
|
||||||
* v850.h (v850_operands): Add insert and extract fields, pointers
|
* v850.h (v850_operands): Add insert and extract fields, pointers
|
||||||
to functions used to handle unusual operand encoding.
|
to functions used to handle unusual operand encoding.
|
||||||
(V850_OPERAND_REG, V850_OPERAND_SRG, V850_OPERAND_CC,
|
(V850_OPERAND_REG, V850_OPERAND_SRG, V850_OPERAND_CC,
|
||||||
V850_OPERAND_SIGNED): Defined.
|
V850_OPERAND_SIGNED): Defined.
|
||||||
|
|
||||||
Wed Aug 21 17:45:10 1996 J.T. Conklin <jtc@rtl.cygnus.com>
|
Wed Aug 21 17:45:10 1996 J.T. Conklin <jtc@rtl.cygnus.com>
|
||||||
|
|
||||||
|
@ -1611,11 +1619,11 @@ Tue Aug 20 14:52:02 1996 J.T. Conklin <jtc@rtl.cygnus.com>
|
||||||
Fri Aug 16 14:44:15 1996 James G. Smith <jsmith@cygnus.co.uk>
|
Fri Aug 16 14:44:15 1996 James G. Smith <jsmith@cygnus.co.uk>
|
||||||
|
|
||||||
* mips.h (OP_SH_LOCC, OP_SH_HICC, OP_MASK_CC, OP_SH_COP1NORM,
|
* mips.h (OP_SH_LOCC, OP_SH_HICC, OP_MASK_CC, OP_SH_COP1NORM,
|
||||||
OP_MASK_COP1NORM, OP_SH_COP1SPEC, OP_MASK_COP1SPEC,
|
OP_MASK_COP1NORM, OP_SH_COP1SPEC, OP_MASK_COP1SPEC,
|
||||||
OP_MASK_COP1SCLR, OP_MASK_COP1CMP, OP_SH_COP1CMP, OP_SH_FORMAT,
|
OP_MASK_COP1SCLR, OP_MASK_COP1CMP, OP_SH_COP1CMP, OP_SH_FORMAT,
|
||||||
OP_MASK_FORMAT, OP_SH_TRUE, OP_MASK_TRUE, OP_SH_GE, OP_MASK_GE,
|
OP_MASK_FORMAT, OP_SH_TRUE, OP_MASK_TRUE, OP_SH_GE, OP_MASK_GE,
|
||||||
OP_SH_UNSIGNED, OP_MASK_UNSIGNED, OP_SH_HINT, OP_MASK_HINT):
|
OP_SH_UNSIGNED, OP_MASK_UNSIGNED, OP_SH_HINT, OP_MASK_HINT):
|
||||||
Defined.
|
Defined.
|
||||||
|
|
||||||
Fri Aug 16 00:15:15 1996 Jeffrey A Law (law@cygnus.com)
|
Fri Aug 16 00:15:15 1996 Jeffrey A Law (law@cygnus.com)
|
||||||
|
|
||||||
|
@ -1625,7 +1633,7 @@ Fri Aug 16 00:15:15 1996 Jeffrey A Law (law@cygnus.com)
|
||||||
Thu Aug 15 13:11:46 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
|
Thu Aug 15 13:11:46 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
|
||||||
|
|
||||||
* d10v.h: Add some additional defines to support the
|
* d10v.h: Add some additional defines to support the
|
||||||
assembler in determining which operations can be done in parallel.
|
assembler in determining which operations can be done in parallel.
|
||||||
|
|
||||||
Tue Aug 6 11:13:22 1996 Jeffrey A Law (law@cygnus.com)
|
Tue Aug 6 11:13:22 1996 Jeffrey A Law (law@cygnus.com)
|
||||||
|
|
||||||
|
@ -1641,7 +1649,7 @@ Fri Jul 26 11:47:10 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
|
||||||
Thu Jul 25 12:06:22 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
|
Thu Jul 25 12:06:22 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
|
||||||
|
|
||||||
* d10v.h: Changes for divs, parallel-only instructions, and
|
* d10v.h: Changes for divs, parallel-only instructions, and
|
||||||
signed numbers.
|
signed numbers.
|
||||||
|
|
||||||
Mon Jul 22 11:21:15 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
|
Mon Jul 22 11:21:15 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
|
||||||
|
|
||||||
|
@ -1663,7 +1671,7 @@ Thu Jul 11 12:09:15 1996 Jeffrey A Law (law@cygnus.com)
|
||||||
|
|
||||||
Wed Jul 3 14:30:12 1996 J.T. Conklin <jtc@rtl.cygnus.com>
|
Wed Jul 3 14:30:12 1996 J.T. Conklin <jtc@rtl.cygnus.com>
|
||||||
|
|
||||||
* m68k.h (mcf5200): New macro.
|
* m68k.h (mcf5200): New macro.
|
||||||
Document names of coldfire control registers.
|
Document names of coldfire control registers.
|
||||||
|
|
||||||
Tue Jul 2 23:05:45 1996 Jeffrey A Law (law@cygnus.com)
|
Tue Jul 2 23:05:45 1996 Jeffrey A Law (law@cygnus.com)
|
||||||
|
@ -1813,7 +1821,7 @@ Tue Oct 24 10:49:10 1995 Jeffrey A Law (law@cygnus.com)
|
||||||
Mon Oct 23 11:09:16 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
|
Mon Oct 23 11:09:16 1995 James G. Smith <jsmith@pasanda.cygnus.co.uk>
|
||||||
|
|
||||||
* mips.h: Added INSN_4100 flag to mark NEC VR4100 specific
|
* mips.h: Added INSN_4100 flag to mark NEC VR4100 specific
|
||||||
instructions.
|
instructions.
|
||||||
|
|
||||||
Mon Oct 16 10:28:15 1995 Michael Meissner <meissner@tiktok.cygnus.com>
|
Mon Oct 16 10:28:15 1995 Michael Meissner <meissner@tiktok.cygnus.com>
|
||||||
|
|
||||||
|
|
|
@ -313,3 +313,9 @@ const struct arc_operand_value *arc_opcode_lookup_suffix
|
||||||
PARAMS ((const struct arc_operand *type, int value));
|
PARAMS ((const struct arc_operand *type, int value));
|
||||||
int arc_opcode_supported PARAMS ((const struct arc_opcode *));
|
int arc_opcode_supported PARAMS ((const struct arc_opcode *));
|
||||||
int arc_opval_supported PARAMS ((const struct arc_operand_value *));
|
int arc_opval_supported PARAMS ((const struct arc_operand_value *));
|
||||||
|
int arc_limm_fixup_adjust PARAMS ((arc_insn));
|
||||||
|
int arc_insn_is_j PARAMS ((arc_insn));
|
||||||
|
int arc_insn_not_jl PARAMS ((arc_insn));
|
||||||
|
int arc_operand_type PARAMS ((int));
|
||||||
|
struct arc_operand_value *get_ext_suffix PARAMS ((char *));
|
||||||
|
int arc_get_noshortcut_flag PARAMS ((void));
|
||||||
|
|
|
@ -190,7 +190,7 @@ struct pd_reg
|
||||||
};
|
};
|
||||||
|
|
||||||
extern const struct pd_reg d10v_predefined_registers[];
|
extern const struct pd_reg d10v_predefined_registers[];
|
||||||
int d10v_reg_name_cnt();
|
int d10v_reg_name_cnt PARAMS ((void));
|
||||||
|
|
||||||
/* an expressionS only has one register type, so we fake it */
|
/* an expressionS only has one register type, so we fake it */
|
||||||
/* by setting high bits to indicate type */
|
/* by setting high bits to indicate type */
|
||||||
|
|
|
@ -32,7 +32,7 @@ struct pd_reg
|
||||||
};
|
};
|
||||||
|
|
||||||
extern const struct pd_reg pre_defined_registers[];
|
extern const struct pd_reg pre_defined_registers[];
|
||||||
int reg_name_cnt();
|
int reg_name_cnt PARAMS ((void));
|
||||||
|
|
||||||
/* the number of control registers */
|
/* the number of control registers */
|
||||||
#define MAX_CONTROL_REG 64
|
#define MAX_CONTROL_REG 64
|
||||||
|
|
|
@ -1,3 +1,33 @@
|
||||||
|
2001-08-25 Andreas Jaeger <aj@suse.de>
|
||||||
|
|
||||||
|
* tic54x-dis.c: Add unused attributes where needed.
|
||||||
|
|
||||||
|
* z8k-dis.c (output_instr): Add unused attribute.
|
||||||
|
|
||||||
|
* h8300-dis.c: Add missing prototypes.
|
||||||
|
(bfd_h8_disassemble): Make static.
|
||||||
|
|
||||||
|
* cris-dis.c: Add missing prototype.
|
||||||
|
* h8500-dis.c: Likewise.
|
||||||
|
* m68hc11-dis.c: Likewise.
|
||||||
|
* pj-dis.c: Likewise.
|
||||||
|
* tic54x-dis.c: Likewise.
|
||||||
|
* v850-dis.c: Likewise.
|
||||||
|
* vax-dis.c: Likewise.
|
||||||
|
* w65-dis.c: Likewise.
|
||||||
|
* z8k-dis.c: Likewise.
|
||||||
|
|
||||||
|
* d10v-dis.c: Add missing prototype.
|
||||||
|
(dis_long): Remove unused variable.
|
||||||
|
(dis_2_short): Likewise.
|
||||||
|
|
||||||
|
* sh-dis.c: Add missing prototypes.
|
||||||
|
* v850-opc.c: Likewise.
|
||||||
|
Add unused attributes where needed.
|
||||||
|
|
||||||
|
* ns32k-dis.c: Add missing prototypes.
|
||||||
|
(bit_extract_simple): Remove unused variable.
|
||||||
|
|
||||||
2001-08-23 Martin Schwidefsky <schwidefsky@de.ibm.com>
|
2001-08-23 Martin Schwidefsky <schwidefsky@de.ibm.com>
|
||||||
|
|
||||||
* opcodes/s390-opc.c: Add "low or high" and "not low or high"
|
* opcodes/s390-opc.c: Add "low or high" and "not low or high"
|
||||||
|
|
|
@ -7,7 +7,7 @@ This file is part of the GNU binutils and GDB, the GNU debugger.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify it under
|
This program is free software; you can redistribute it and/or modify it under
|
||||||
the terms of the GNU General Public License as published by the Free
|
the terms of the GNU General Public License as published by the Free
|
||||||
Software Foundation; either version 2 of the License, or (at your option)
|
Software Foundation; either version 2, or (at your option)
|
||||||
any later version.
|
any later version.
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful, but WITHOUT
|
This program is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
@ -97,6 +97,8 @@ static int print_insn_cris_with_register_prefix
|
||||||
PARAMS ((bfd_vma, disassemble_info *));
|
PARAMS ((bfd_vma, disassemble_info *));
|
||||||
static int print_insn_cris_without_register_prefix
|
static int print_insn_cris_without_register_prefix
|
||||||
PARAMS ((bfd_vma, disassemble_info *));
|
PARAMS ((bfd_vma, disassemble_info *));
|
||||||
|
static const struct cris_opcode *get_opcode_entry
|
||||||
|
PARAMS ((unsigned int, unsigned int));
|
||||||
|
|
||||||
/* Return the descriptor of a special register.
|
/* Return the descriptor of a special register.
|
||||||
FIXME: Depend on a CPU-version specific argument when all machinery
|
FIXME: Depend on a CPU-version specific argument when all machinery
|
||||||
|
|
|
@ -29,6 +29,9 @@ static void dis_2_short PARAMS ((unsigned long insn, bfd_vma memaddr,
|
||||||
struct disassemble_info *info, int order));
|
struct disassemble_info *info, int order));
|
||||||
static void dis_long PARAMS ((unsigned long insn, bfd_vma memaddr,
|
static void dis_long PARAMS ((unsigned long insn, bfd_vma memaddr,
|
||||||
struct disassemble_info *info));
|
struct disassemble_info *info));
|
||||||
|
static void print_operand
|
||||||
|
PARAMS ((struct d10v_operand *, long unsigned int, struct d10v_opcode *,
|
||||||
|
bfd_vma, struct disassemble_info *));
|
||||||
|
|
||||||
int
|
int
|
||||||
print_insn_d10v (memaddr, info)
|
print_insn_d10v (memaddr, info)
|
||||||
|
@ -192,7 +195,6 @@ dis_long (insn, memaddr, info)
|
||||||
struct disassemble_info *info;
|
struct disassemble_info *info;
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
char buf[32];
|
|
||||||
struct d10v_opcode *op = (struct d10v_opcode *) d10v_opcodes;
|
struct d10v_opcode *op = (struct d10v_opcode *) d10v_opcodes;
|
||||||
struct d10v_operand *oper;
|
struct d10v_operand *oper;
|
||||||
int need_paren = 0;
|
int need_paren = 0;
|
||||||
|
@ -235,10 +237,8 @@ dis_2_short (insn, memaddr, info, order)
|
||||||
int order;
|
int order;
|
||||||
{
|
{
|
||||||
int i, j;
|
int i, j;
|
||||||
char astr[2][32];
|
|
||||||
unsigned int ins[2];
|
unsigned int ins[2];
|
||||||
struct d10v_opcode *op;
|
struct d10v_opcode *op;
|
||||||
char buf[32];
|
|
||||||
int match, num_match = 0;
|
int match, num_match = 0;
|
||||||
struct d10v_operand *oper;
|
struct d10v_operand *oper;
|
||||||
int need_paren = 0;
|
int need_paren = 0;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* Disassemble h8300 instructions.
|
/* Disassemble h8300 instructions.
|
||||||
Copyright 1993, 1994, 1996, 1998, 2000 Free Software Foundation, Inc.
|
Copyright 1993, 1994, 1996, 1998, 2000, 2001 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
|
@ -23,6 +23,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||||
#include "dis-asm.h"
|
#include "dis-asm.h"
|
||||||
#include "opintl.h"
|
#include "opintl.h"
|
||||||
|
|
||||||
|
static void bfd_h8_disassemble_init PARAMS ((void));
|
||||||
|
static unsigned int bfd_h8_disassemble
|
||||||
|
PARAMS ((bfd_vma, disassemble_info *, int));
|
||||||
|
|
||||||
/* Run through the opcodes and sort them into order to make them easy
|
/* Run through the opcodes and sort them into order to make them easy
|
||||||
to disassemble. */
|
to disassemble. */
|
||||||
static void
|
static void
|
||||||
|
@ -58,7 +62,7 @@ bfd_h8_disassemble_init ()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned int
|
static unsigned int
|
||||||
bfd_h8_disassemble (addr, info, mode)
|
bfd_h8_disassemble (addr, info, mode)
|
||||||
bfd_vma addr;
|
bfd_vma addr;
|
||||||
disassemble_info *info;
|
disassemble_info *info;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* Disassemble h8500 instructions.
|
/* Disassemble h8500 instructions.
|
||||||
Copyright 1993, 1998, 2000 Free Software Foundation, Inc.
|
Copyright 1993, 1998, 2000, 2001 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
|
@ -30,6 +30,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||||
|
|
||||||
#include <setjmp.h>
|
#include <setjmp.h>
|
||||||
|
|
||||||
|
static int fetch_data PARAMS ((struct disassemble_info *, bfd_byte *));
|
||||||
|
|
||||||
struct private
|
struct private
|
||||||
{
|
{
|
||||||
/* Points to first byte not fetched. */
|
/* Points to first byte not fetched. */
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* Print National Semiconductor 32000 instructions.
|
/* Print National Semiconductor 32000 instructions.
|
||||||
Copyright 1986, 1988, 1991, 1992, 1994, 1998
|
Copyright 1986, 1988, 1991, 1992, 1994, 1998, 2001
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of opcodes library.
|
This file is part of opcodes library.
|
||||||
|
@ -39,6 +39,16 @@ static int print_insn_arg
|
||||||
PARAMS ((int, int, int *, char *, bfd_vma, char *, int));
|
PARAMS ((int, int, int *, char *, bfd_vma, char *, int));
|
||||||
static int get_displacement PARAMS ((char *, int *));
|
static int get_displacement PARAMS ((char *, int *));
|
||||||
static int invalid_float PARAMS ((char *, int));
|
static int invalid_float PARAMS ((char *, int));
|
||||||
|
static long int read_memory_integer PARAMS ((unsigned char *, int));
|
||||||
|
static int fetch_data PARAMS ((struct disassemble_info *, bfd_byte *));
|
||||||
|
struct ns32k_option;
|
||||||
|
static void optlist PARAMS ((int, const struct ns32k_option *, char *));
|
||||||
|
static void list_search PARAMS ((int, const struct ns32k_option *, char *));
|
||||||
|
static int bit_extract PARAMS ((bfd_byte *, int, int));
|
||||||
|
static int bit_extract_simple PARAMS ((bfd_byte *, int, int));
|
||||||
|
static void bit_copy PARAMS ((char *, int, int, char *));
|
||||||
|
static int sign_extend PARAMS ((int, int));
|
||||||
|
static void flip_bytes PARAMS ((char *, int));
|
||||||
|
|
||||||
static long read_memory_integer(addr, nr)
|
static long read_memory_integer(addr, nr)
|
||||||
unsigned char *addr;
|
unsigned char *addr;
|
||||||
|
@ -308,7 +318,6 @@ bit_extract_simple (buffer, offset, count)
|
||||||
int count;
|
int count;
|
||||||
{
|
{
|
||||||
int result;
|
int result;
|
||||||
int mask;
|
|
||||||
int bit;
|
int bit;
|
||||||
|
|
||||||
buffer += offset >> 3;
|
buffer += offset >> 3;
|
||||||
|
|
|
@ -23,6 +23,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||||
|
|
||||||
extern const pj_opc_info_t pj_opc_info[512];
|
extern const pj_opc_info_t pj_opc_info[512];
|
||||||
|
|
||||||
|
static int get_int PARAMS ((bfd_vma, int *, struct disassemble_info *));
|
||||||
|
|
||||||
|
|
||||||
static int
|
static int
|
||||||
get_int (memaddr, iptr, info)
|
get_int (memaddr, iptr, info)
|
||||||
bfd_vma memaddr;
|
bfd_vma memaddr;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* Disassemble SH instructions.
|
/* Disassemble SH instructions.
|
||||||
Copyright 1993, 1994, 1995, 1997, 1998, 2000
|
Copyright 1993, 1994, 1995, 1997, 1998, 2000, 2001
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
@ -26,6 +26,13 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||||
|
|
||||||
#define LITTLE_BIT 2
|
#define LITTLE_BIT 2
|
||||||
|
|
||||||
|
static void print_movxy
|
||||||
|
PARAMS ((sh_opcode_info *, int, int, fprintf_ftype, void *));
|
||||||
|
static void print_insn_ddt PARAMS ((int, struct disassemble_info *));
|
||||||
|
static void print_dsp_reg PARAMS ((int, fprintf_ftype, void *));
|
||||||
|
static void print_insn_ppi PARAMS ((int, struct disassemble_info *));
|
||||||
|
static int print_insn_shx PARAMS ((bfd_vma, struct disassemble_info *));
|
||||||
|
|
||||||
static void
|
static void
|
||||||
print_movxy (op, rn, rm, fprintf_fn, stream)
|
print_movxy (op, rn, rm, fprintf_fn, stream)
|
||||||
sh_opcode_info *op;
|
sh_opcode_info *op;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* Disassembly routines for TMS320C54X architecture
|
/* Disassembly routines for TMS320C54X architecture
|
||||||
Copyright 1999, 2000 Free Software Foundation, Inc.
|
Copyright 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||||
Contributed by Timothy Wall (twall@cygnus.com)
|
Contributed by Timothy Wall (twall@cygnus.com)
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
@ -31,6 +31,7 @@ typedef struct _instruction {
|
||||||
partemplate *ptm;
|
partemplate *ptm;
|
||||||
} instruction;
|
} instruction;
|
||||||
|
|
||||||
|
static int has_lkaddr PARAMS ((unsigned short, template *));
|
||||||
static int get_insn_size PARAMS ((unsigned short, instruction *));
|
static int get_insn_size PARAMS ((unsigned short, instruction *));
|
||||||
static int get_instruction PARAMS ((disassemble_info *, bfd_vma,
|
static int get_instruction PARAMS ((disassemble_info *, bfd_vma,
|
||||||
unsigned short, instruction *));
|
unsigned short, instruction *));
|
||||||
|
@ -496,7 +497,7 @@ print_parallel_instruction (info, memaddr, opcode, ptm, size)
|
||||||
|
|
||||||
static int
|
static int
|
||||||
sprint_dual_address (info, buf, code)
|
sprint_dual_address (info, buf, code)
|
||||||
disassemble_info *info;
|
disassemble_info *info ATTRIBUTE_UNUSED;
|
||||||
char buf[];
|
char buf[];
|
||||||
unsigned short code;
|
unsigned short code;
|
||||||
{
|
{
|
||||||
|
@ -511,7 +512,7 @@ sprint_dual_address (info, buf, code)
|
||||||
|
|
||||||
static int
|
static int
|
||||||
sprint_indirect_address (info, buf, opcode)
|
sprint_indirect_address (info, buf, opcode)
|
||||||
disassemble_info *info;
|
disassemble_info *info ATTRIBUTE_UNUSED;
|
||||||
char buf[];
|
char buf[];
|
||||||
unsigned short opcode;
|
unsigned short opcode;
|
||||||
{
|
{
|
||||||
|
@ -534,7 +535,7 @@ sprint_indirect_address (info, buf, opcode)
|
||||||
|
|
||||||
static int
|
static int
|
||||||
sprint_direct_address (info, buf, opcode)
|
sprint_direct_address (info, buf, opcode)
|
||||||
disassemble_info *info;
|
disassemble_info *info ATTRIBUTE_UNUSED;
|
||||||
char buf[];
|
char buf[];
|
||||||
unsigned short opcode;
|
unsigned short opcode;
|
||||||
{
|
{
|
||||||
|
@ -544,7 +545,7 @@ sprint_direct_address (info, buf, opcode)
|
||||||
|
|
||||||
static int
|
static int
|
||||||
sprint_mmr (info, buf, mmr)
|
sprint_mmr (info, buf, mmr)
|
||||||
disassemble_info *info;
|
disassemble_info *info ATTRIBUTE_UNUSED;
|
||||||
char buf[];
|
char buf[];
|
||||||
int mmr;
|
int mmr;
|
||||||
{
|
{
|
||||||
|
@ -564,7 +565,7 @@ sprint_mmr (info, buf, mmr)
|
||||||
|
|
||||||
static int
|
static int
|
||||||
sprint_cc2 (info, buf, opcode)
|
sprint_cc2 (info, buf, opcode)
|
||||||
disassemble_info *info;
|
disassemble_info *info ATTRIBUTE_UNUSED;
|
||||||
char *buf;
|
char *buf;
|
||||||
unsigned short opcode;
|
unsigned short opcode;
|
||||||
{
|
{
|
||||||
|
@ -577,7 +578,7 @@ sprint_cc2 (info, buf, opcode)
|
||||||
|
|
||||||
static int
|
static int
|
||||||
sprint_condition (info, buf, opcode)
|
sprint_condition (info, buf, opcode)
|
||||||
disassemble_info *info;
|
disassemble_info *info ATTRIBUTE_UNUSED;
|
||||||
char *buf;
|
char *buf;
|
||||||
unsigned short opcode;
|
unsigned short opcode;
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* Disassemble V850 instructions.
|
/* Disassemble V850 instructions.
|
||||||
Copyright 1996, 1997, 1998, 2000 Free Software Foundation, Inc.
|
Copyright 1996, 1997, 1998, 2000, 2001 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
|
@ -41,6 +41,9 @@ static const char *const v850_cc_names[] =
|
||||||
{ "v", "c/l", "z", "nh", "s/n", "t", "lt", "le",
|
{ "v", "c/l", "z", "nh", "s/n", "t", "lt", "le",
|
||||||
"nv", "nc/nl", "nz", "h", "ns/p", "sa", "ge", "gt" };
|
"nv", "nc/nl", "nz", "h", "ns/p", "sa", "ge", "gt" };
|
||||||
|
|
||||||
|
static int disassemble
|
||||||
|
PARAMS ((bfd_vma, struct disassemble_info *, unsigned long));
|
||||||
|
|
||||||
static int
|
static int
|
||||||
disassemble (memaddr, info, insn)
|
disassemble (memaddr, info, insn)
|
||||||
bfd_vma memaddr;
|
bfd_vma memaddr;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* Assemble V850 instructions.
|
/* Assemble V850 instructions.
|
||||||
Copyright 1996, 1997, 1998, 2000 Free Software Foundation, Inc.
|
Copyright 1996, 1997, 1998, 2000, 2001 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
|
@ -34,6 +34,42 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||||
/* two-word opcodes */
|
/* two-word opcodes */
|
||||||
#define two(x,y) ((unsigned int) (x) | ((unsigned int) (y) << 16))
|
#define two(x,y) ((unsigned int) (x) | ((unsigned int) (y) << 16))
|
||||||
|
|
||||||
|
static long unsigned int insert_d9
|
||||||
|
PARAMS ((long unsigned int, long int, const char **));
|
||||||
|
static long unsigned int extract_d9
|
||||||
|
PARAMS ((long unsigned int, int *));
|
||||||
|
static long unsigned int insert_d22
|
||||||
|
PARAMS ((long unsigned int, long int, const char **));
|
||||||
|
static long unsigned int extract_d22
|
||||||
|
PARAMS ((long unsigned int, int *));
|
||||||
|
static long unsigned int insert_d16_15
|
||||||
|
PARAMS ((long unsigned int, long int, const char **));
|
||||||
|
static long unsigned int extract_d16_15
|
||||||
|
PARAMS ((long unsigned int, int *));
|
||||||
|
static long unsigned int insert_d8_7
|
||||||
|
PARAMS ((long unsigned int, long int, const char **));
|
||||||
|
static long unsigned int extract_d8_7 PARAMS ((long unsigned int, int *));
|
||||||
|
static long unsigned int insert_d8_6
|
||||||
|
PARAMS ((long unsigned int, long int, const char **));
|
||||||
|
static long unsigned int extract_d8_6 PARAMS ((long unsigned int, int *));
|
||||||
|
static long unsigned int insert_d5_4
|
||||||
|
PARAMS ((long unsigned int, long int, const char **));
|
||||||
|
static long unsigned int extract_d5_4 PARAMS ((long unsigned int, int *));
|
||||||
|
static long unsigned int insert_d16_16
|
||||||
|
PARAMS ((long unsigned int, long int, const char **));
|
||||||
|
static long unsigned int extract_d16_16 PARAMS ((long unsigned int, int *));
|
||||||
|
static long unsigned int insert_i9
|
||||||
|
PARAMS ((long unsigned int, long int, const char **));
|
||||||
|
static long unsigned int extract_i9 PARAMS ((long unsigned int, int *));
|
||||||
|
static long unsigned int insert_u9
|
||||||
|
PARAMS ((long unsigned int, long unsigned int, const char **));
|
||||||
|
static long unsigned int extract_u9 PARAMS ((long unsigned int, int *));
|
||||||
|
static long unsigned int insert_spe
|
||||||
|
PARAMS ((long unsigned int, long unsigned int, const char **));
|
||||||
|
static long unsigned int extract_spe PARAMS ((long unsigned int, int *));
|
||||||
|
static long unsigned int insert_i5div
|
||||||
|
PARAMS ((long unsigned int, long unsigned int, const char **));
|
||||||
|
static long unsigned int extract_i5div PARAMS ((long unsigned int, int *));
|
||||||
|
|
||||||
|
|
||||||
/* The functions used to insert and extract complicated operands. */
|
/* The functions used to insert and extract complicated operands. */
|
||||||
|
@ -71,7 +107,7 @@ insert_d9 (insn, value, errmsg)
|
||||||
static unsigned long
|
static unsigned long
|
||||||
extract_d9 (insn, invalid)
|
extract_d9 (insn, invalid)
|
||||||
unsigned long insn;
|
unsigned long insn;
|
||||||
int * invalid;
|
int * invalid ATTRIBUTE_UNUSED;
|
||||||
{
|
{
|
||||||
unsigned long ret = ((insn & 0xf800) >> 7) | ((insn & 0x0070) >> 3);
|
unsigned long ret = ((insn & 0xf800) >> 7) | ((insn & 0x0070) >> 3);
|
||||||
|
|
||||||
|
@ -103,7 +139,7 @@ insert_d22 (insn, value, errmsg)
|
||||||
static unsigned long
|
static unsigned long
|
||||||
extract_d22 (insn, invalid)
|
extract_d22 (insn, invalid)
|
||||||
unsigned long insn;
|
unsigned long insn;
|
||||||
int * invalid;
|
int * invalid ATTRIBUTE_UNUSED;
|
||||||
{
|
{
|
||||||
signed long ret = ((insn & 0xfffe0000) >> 16) | ((insn & 0x3f) << 16);
|
signed long ret = ((insn & 0xfffe0000) >> 16) | ((insn & 0x3f) << 16);
|
||||||
|
|
||||||
|
@ -132,7 +168,7 @@ insert_d16_15 (insn, value, errmsg)
|
||||||
static unsigned long
|
static unsigned long
|
||||||
extract_d16_15 (insn, invalid)
|
extract_d16_15 (insn, invalid)
|
||||||
unsigned long insn;
|
unsigned long insn;
|
||||||
int * invalid;
|
int * invalid ATTRIBUTE_UNUSED;
|
||||||
{
|
{
|
||||||
signed long ret = (insn & 0xfffe0000);
|
signed long ret = (insn & 0xfffe0000);
|
||||||
|
|
||||||
|
@ -163,7 +199,7 @@ insert_d8_7 (insn, value, errmsg)
|
||||||
static unsigned long
|
static unsigned long
|
||||||
extract_d8_7 (insn, invalid)
|
extract_d8_7 (insn, invalid)
|
||||||
unsigned long insn;
|
unsigned long insn;
|
||||||
int * invalid;
|
int * invalid ATTRIBUTE_UNUSED;
|
||||||
{
|
{
|
||||||
unsigned long ret = (insn & 0x7f);
|
unsigned long ret = (insn & 0x7f);
|
||||||
|
|
||||||
|
@ -194,7 +230,7 @@ insert_d8_6 (insn, value, errmsg)
|
||||||
static unsigned long
|
static unsigned long
|
||||||
extract_d8_6 (insn, invalid)
|
extract_d8_6 (insn, invalid)
|
||||||
unsigned long insn;
|
unsigned long insn;
|
||||||
int * invalid;
|
int * invalid ATTRIBUTE_UNUSED;
|
||||||
{
|
{
|
||||||
unsigned long ret = (insn & 0x7e);
|
unsigned long ret = (insn & 0x7e);
|
||||||
|
|
||||||
|
@ -225,7 +261,7 @@ insert_d5_4 (insn, value, errmsg)
|
||||||
static unsigned long
|
static unsigned long
|
||||||
extract_d5_4 (insn, invalid)
|
extract_d5_4 (insn, invalid)
|
||||||
unsigned long insn;
|
unsigned long insn;
|
||||||
int * invalid;
|
int * invalid ATTRIBUTE_UNUSED;
|
||||||
{
|
{
|
||||||
unsigned long ret = (insn & 0x0f);
|
unsigned long ret = (insn & 0x0f);
|
||||||
|
|
||||||
|
@ -247,7 +283,7 @@ insert_d16_16 (insn, value, errmsg)
|
||||||
static unsigned long
|
static unsigned long
|
||||||
extract_d16_16 (insn, invalid)
|
extract_d16_16 (insn, invalid)
|
||||||
unsigned long insn;
|
unsigned long insn;
|
||||||
int * invalid;
|
int * invalid ATTRIBUTE_UNUSED;
|
||||||
{
|
{
|
||||||
signed long ret = insn & 0xfffe0000;
|
signed long ret = insn & 0xfffe0000;
|
||||||
|
|
||||||
|
@ -273,7 +309,7 @@ insert_i9 (insn, value, errmsg)
|
||||||
static unsigned long
|
static unsigned long
|
||||||
extract_i9 (insn, invalid)
|
extract_i9 (insn, invalid)
|
||||||
unsigned long insn;
|
unsigned long insn;
|
||||||
int * invalid;
|
int * invalid ATTRIBUTE_UNUSED;
|
||||||
{
|
{
|
||||||
signed long ret = insn & 0x003c0000;
|
signed long ret = insn & 0x003c0000;
|
||||||
|
|
||||||
|
@ -300,7 +336,7 @@ insert_u9 (insn, value, errmsg)
|
||||||
static unsigned long
|
static unsigned long
|
||||||
extract_u9 (insn, invalid)
|
extract_u9 (insn, invalid)
|
||||||
unsigned long insn;
|
unsigned long insn;
|
||||||
int * invalid;
|
int * invalid ATTRIBUTE_UNUSED;
|
||||||
{
|
{
|
||||||
unsigned long ret = insn & 0x003c0000;
|
unsigned long ret = insn & 0x003c0000;
|
||||||
|
|
||||||
|
@ -325,8 +361,8 @@ insert_spe (insn, value, errmsg)
|
||||||
|
|
||||||
static unsigned long
|
static unsigned long
|
||||||
extract_spe (insn, invalid)
|
extract_spe (insn, invalid)
|
||||||
unsigned long insn;
|
unsigned long insn ATTRIBUTE_UNUSED;
|
||||||
int * invalid;
|
int * invalid ATTRIBUTE_UNUSED;
|
||||||
{
|
{
|
||||||
return 3;
|
return 3;
|
||||||
}
|
}
|
||||||
|
@ -355,7 +391,7 @@ insert_i5div (insn, value, errmsg)
|
||||||
static unsigned long
|
static unsigned long
|
||||||
extract_i5div (insn, invalid)
|
extract_i5div (insn, invalid)
|
||||||
unsigned long insn;
|
unsigned long insn;
|
||||||
int * invalid;
|
int * invalid ATTRIBUTE_UNUSED;
|
||||||
{
|
{
|
||||||
unsigned long ret = insn & 0x3c0000;
|
unsigned long ret = insn & 0x3c0000;
|
||||||
|
|
||||||
|
|
|
@ -21,12 +21,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||||
#include "dis-asm.h"
|
#include "dis-asm.h"
|
||||||
|
|
||||||
/* Local function prototypes */
|
/* Local function prototypes */
|
||||||
static int
|
static int fetch_data PARAMS ((struct disassemble_info *, bfd_byte *));
|
||||||
print_insn_arg PARAMS ((const char *, unsigned char *, bfd_vma,
|
static int print_insn_arg
|
||||||
disassemble_info *));
|
PARAMS ((const char *, unsigned char *, bfd_vma, disassemble_info *));
|
||||||
|
static int print_insn_mode
|
||||||
|
PARAMS ((int, unsigned char *, bfd_vma, disassemble_info *));
|
||||||
|
|
||||||
static int
|
|
||||||
print_insn_mode PARAMS ((int, unsigned char *, bfd_vma, disassemble_info *));
|
|
||||||
|
|
||||||
static char *reg_names[] =
|
static char *reg_names[] =
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* Disassemble WDC 65816 instructions.
|
/* Disassemble WDC 65816 instructions.
|
||||||
Copyright 1995, 1998, 2000 Free Software Foundation, Inc.
|
Copyright 1995, 1998, 2000, 2001 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
|
@ -26,6 +26,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||||
static fprintf_ftype fpr;
|
static fprintf_ftype fpr;
|
||||||
static void *stream;
|
static void *stream;
|
||||||
static struct disassemble_info *local_info;
|
static struct disassemble_info *local_info;
|
||||||
|
|
||||||
|
static void print_operand PARAMS ((int, char *, unsigned int *));
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
static char *lname[] = { "r0","r1","r2","r3","r4","r5","r6","r7","s0" };
|
static char *lname[] = { "r0","r1","r2","r3","r4","r5","r6","r7","s0" };
|
||||||
|
|
||||||
|
|
|
@ -50,6 +50,9 @@ typedef struct {
|
||||||
unsigned long interrupts;
|
unsigned long interrupts;
|
||||||
} instr_data_s;
|
} instr_data_s;
|
||||||
|
|
||||||
|
static int fetch_data PARAMS ((struct disassemble_info *, int));
|
||||||
|
|
||||||
|
|
||||||
/* Make sure that bytes from INFO->PRIVATE_DATA->BUFFER (inclusive)
|
/* Make sure that bytes from INFO->PRIVATE_DATA->BUFFER (inclusive)
|
||||||
to ADDR (exclusive) are valid. Returns 1 for success, longjmps
|
to ADDR (exclusive) are valid. Returns 1 for success, longjmps
|
||||||
on error. */
|
on error. */
|
||||||
|
@ -134,6 +137,7 @@ static char *ctrl_names[8] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
static int seg_length;
|
static int seg_length;
|
||||||
|
static int print_insn_z8k PARAMS ((bfd_vma, disassemble_info *, int));
|
||||||
int z8k_lookup_instr PARAMS ((unsigned char *, disassemble_info *));
|
int z8k_lookup_instr PARAMS ((unsigned char *, disassemble_info *));
|
||||||
static void output_instr
|
static void output_instr
|
||||||
PARAMS ((instr_data_s *, unsigned long, disassemble_info *));
|
PARAMS ((instr_data_s *, unsigned long, disassemble_info *));
|
||||||
|
@ -274,7 +278,7 @@ z8k_lookup_instr (nibbles, info)
|
||||||
static void
|
static void
|
||||||
output_instr (instr_data, addr, info)
|
output_instr (instr_data, addr, info)
|
||||||
instr_data_s *instr_data;
|
instr_data_s *instr_data;
|
||||||
unsigned long addr;
|
unsigned long addr ATTRIBUTE_UNUSED;
|
||||||
disassemble_info *info;
|
disassemble_info *info;
|
||||||
{
|
{
|
||||||
int loop, loop_limit;
|
int loop, loop_limit;
|
||||||
|
|
Loading…
Reference in New Issue