* Makefile.am (CFILES): Add cris-dis.c and cris-opc.c.

(ALL_MACHINES): Add cris-dis.lo and cris-opc.lo.
	(cris-dis.lo, cris-opc.lo): New rules.
	* Makefile.in: Rebuild.
	* configure.in (bfd_cris_arch): New target.
	* configure: Rebuild.
	* disassemble.c (ARCH_cris): Define.
	(disassembler): Support ARCH_cris.
	* cris-dis.c, cris-opc.c: New files.
	* po/POTFILES.in, po/opcodes.pot: Regenerate.
This commit is contained in:
Hans-Peter Nilsson 2000-07-20 16:46:28 +00:00
parent 3bd336f7c8
commit 6c95a37f64
10 changed files with 2286 additions and 15 deletions

View File

@ -1,3 +1,16 @@
2000-07-20 Hans-Peter Nilsson <hp@axis.com>
* Makefile.am (CFILES): Add cris-dis.c and cris-opc.c.
(ALL_MACHINES): Add cris-dis.lo and cris-opc.lo.
(cris-dis.lo, cris-opc.lo): New rules.
* Makefile.in: Rebuild.
* configure.in (bfd_cris_arch): New target.
* configure: Rebuild.
* disassemble.c (ARCH_cris): Define.
(disassembler): Support ARCH_cris.
* cris-dis.c, cris-opc.c: New files.
* po/POTFILES.in, po/opcodes.pot: Regenerate.
2000-07-11 Jakub Jelinek <jakub@redhat.com>
* sparc-opc.c (sparc_opcodes): popc has 0 in rs1, not rs2.

View File

@ -45,6 +45,8 @@ CFILES = \
cgen-asm.c \
cgen-dis.c \
cgen-opc.c \
cris-dis.c \
cris-opc.c \
d10v-dis.c \
d10v-opc.c \
d30v-dis.c \
@ -123,6 +125,8 @@ ALL_MACHINES = \
cgen-asm.lo \
cgen-dis.lo \
cgen-opc.lo \
cris-dis.lo \
cris-opc.lo \
d10v-dis.lo \
d10v-opc.lo \
d30v-dis.lo \
@ -243,6 +247,8 @@ ia64-gen.o: ia64-gen.c ia64-opc.c ia64-opc-a.c ia64-opc-b.c ia64-opc-f.c \
ia64-opc-i.c ia64-opc-m.c ia64-opc-d.c ia64-opc.h
ia64-asmtab.c: @MAINT@ ia64-gen ia64-ic.tbl ia64-raw.tbl ia64-waw.tbl ia64-war.tbl
for f in ia64-ic.tbl ia64-raw.tbl ia64-waw.tbl ia64-war.tbl; do \
if test -e $$f; then true; else cp -p $(srcdir)/$$f .; fi; done
./ia64-gen > $(srcdir)/ia64-asmtab.c
# This dependency stuff is copied from BFD.
@ -319,6 +325,10 @@ cgen-dis.lo: cgen-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
$(INCDIR)/libiberty.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen.h
cgen-opc.lo: cgen-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
$(INCDIR)/libiberty.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen.h
cris-dis.lo: cris-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
$(INCDIR)/ansidecl.h sysdep.h config.h $(INCDIR)/opcode/cris.h \
$(INCDIR)/libiberty.h
cris-opc.lo: cris-opc.c $(INCDIR)/opcode/cris.h
d10v-dis.lo: d10v-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
$(INCDIR)/opcode/d10v.h $(INCDIR)/dis-asm.h $(BFD_H)
d10v-opc.lo: d10v-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \

View File

@ -149,6 +149,8 @@ CFILES = \
cgen-asm.c \
cgen-dis.c \
cgen-opc.c \
cris-dis.c \
cris-opc.c \
d10v-dis.c \
d10v-opc.c \
d30v-dis.c \
@ -228,6 +230,8 @@ ALL_MACHINES = \
cgen-asm.lo \
cgen-dis.lo \
cgen-opc.lo \
cris-dis.lo \
cris-opc.lo \
d10v-dis.lo \
d10v-opc.lo \
d30v-dis.lo \
@ -741,6 +745,8 @@ ia64-gen.o: ia64-gen.c ia64-opc.c ia64-opc-a.c ia64-opc-b.c ia64-opc-f.c \
ia64-opc-i.c ia64-opc-m.c ia64-opc-d.c ia64-opc.h
ia64-asmtab.c: @MAINT@ ia64-gen ia64-ic.tbl ia64-raw.tbl ia64-waw.tbl ia64-war.tbl
for f in ia64-ic.tbl ia64-raw.tbl ia64-waw.tbl ia64-war.tbl; do \
if test -e $$f; then true; else cp -p $(srcdir)/$$f .; fi; done
./ia64-gen > $(srcdir)/ia64-asmtab.c
# This dependency stuff is copied from BFD.
@ -817,6 +823,10 @@ cgen-dis.lo: cgen-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
$(INCDIR)/libiberty.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen.h
cgen-opc.lo: cgen-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \
$(INCDIR)/libiberty.h $(BFD_H) $(INCDIR)/symcat.h $(INCDIR)/opcode/cgen.h
cris-dis.lo: cris-dis.c $(INCDIR)/dis-asm.h $(BFD_H) \
$(INCDIR)/ansidecl.h sysdep.h config.h $(INCDIR)/opcode/cris.h \
$(INCDIR)/libiberty.h
cris-opc.lo: cris-opc.c $(INCDIR)/opcode/cris.h
d10v-dis.lo: d10v-dis.c sysdep.h config.h $(INCDIR)/ansidecl.h \
$(INCDIR)/opcode/d10v.h $(INCDIR)/dis-asm.h $(BFD_H)
d10v-opc.lo: d10v-opc.c sysdep.h config.h $(INCDIR)/ansidecl.h \

1
opcodes/configure vendored
View File

@ -3945,6 +3945,7 @@ if test x${all_targets} = xfalse ; then
bfd_arm_arch) ta="$ta arm-dis.lo" ;;
bfd_avr_arch) ta="$ta avr-dis.lo" ;;
bfd_convex_arch) ;;
bfd_cris_arch) ta="$ta cris-dis.lo cris-opc.lo" ;;
bfd_d10v_arch) ta="$ta d10v-dis.lo d10v-opc.lo" ;;
bfd_d30v_arch) ta="$ta d30v-dis.lo d30v-opc.lo" ;;
bfd_fr30_arch) ta="$ta fr30-asm.lo fr30-desc.lo fr30-dis.lo fr30-ibld.lo fr30-opc.lo" using_cgen=yes ;;

View File

@ -156,6 +156,7 @@ if test x${all_targets} = xfalse ; then
bfd_arm_arch) ta="$ta arm-dis.lo" ;;
bfd_avr_arch) ta="$ta avr-dis.lo" ;;
bfd_convex_arch) ;;
bfd_cris_arch) ta="$ta cris-dis.lo cris-opc.lo" ;;
bfd_d10v_arch) ta="$ta d10v-dis.lo d10v-opc.lo" ;;
bfd_d30v_arch) ta="$ta d30v-dis.lo d30v-opc.lo" ;;
bfd_fr30_arch) ta="$ta fr30-asm.lo fr30-desc.lo fr30-dis.lo fr30-ibld.lo fr30-opc.lo" using_cgen=yes ;;

1343
opcodes/cris-dis.c Normal file

File diff suppressed because it is too large Load Diff

885
opcodes/cris-opc.c Normal file
View File

@ -0,0 +1,885 @@
/* cris-opc.c -- Table of opcodes for the CRIS processor.
Copyright (C) 2000 Free Software Foundation, Inc.
Contributed by Axis Communications AB, Lund, Sweden.
Originally written for GAS 1.38.1 by Mikael Asker.
Reorganized by Hans-Peter Nilsson.
This file is part of GAS, GDB and the GNU binutils.
GAS, GDB, and GNU binutils 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 Software Foundation; either version 2, or (at your
option) any later version.
GAS, GDB, and GNU binutils are distributed in the hope that they will be
useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "opcode/cris.h"
#ifndef NULL
#define NULL (0)
#endif
const struct cris_spec_reg
cris_spec_regs[] =
{
{"p0", 0, 1, 0, NULL},
{"vr", 1, 1, 0, NULL},
{"p1", 1, 1, 0, NULL},
{"p2", 2, 1, cris_ver_warning, NULL},
{"p3", 3, 1, cris_ver_warning, NULL},
{"p4", 4, 2, 0, NULL},
{"ccr", 5, 2, 0, NULL},
{"p5", 5, 2, 0, NULL},
{"dcr0",6, 2, cris_ver_v0_3, NULL},
{"p6", 6, 2, cris_ver_v0_3, NULL},
{"dcr1/mof", 7, 4, cris_ver_v10p,
"Register `dcr1/mof' with ambiguous size specified. Guessing 4 bytes"},
{"dcr1/mof", 7, 2, cris_ver_v0_3,
"Register `dcr1/mof' with ambiguous size specified. Guessing 2 bytes"},
{"mof", 7, 4, cris_ver_v10p, NULL},
{"dcr1",7, 2, cris_ver_v0_3, NULL},
{"p7", 7, 4, cris_ver_v10p, NULL},
{"p7", 7, 2, cris_ver_v0_3, NULL},
{"p8", 8, 4, 0, NULL},
{"ibr", 9, 4, 0, NULL},
{"p9", 9, 4, 0, NULL},
{"irp", 10, 4, 0, NULL},
{"p10", 10, 4, 0, NULL},
{"srp", 11, 4, 0, NULL},
{"p11", 11, 4, 0, NULL},
/* For disassembly use only. Accept at assembly with a warning. */
{"bar/dtp0", 12, 4, cris_ver_warning,
"Ambiguous register `bar/dtp0' specified"},
{"bar", 12, 4, cris_ver_v8p, NULL},
{"dtp0",12, 4, cris_ver_v0_3, NULL},
{"p12", 12, 4, 0, NULL},
/* For disassembly use only. Accept at assembly with a warning. */
{"dccr/dtp1",13, 4, cris_ver_warning,
"Ambiguous register `dccr/dtp1' specified"},
{"dccr",13, 4, cris_ver_v8p, NULL},
{"dtp1",13, 4, cris_ver_v0_3, NULL},
{"p13", 13, 4, 0, NULL},
{"brp", 14, 4, cris_ver_v3p, NULL},
{"p14", 14, 4, cris_ver_v3p, NULL},
{"usp", 15, 4, cris_ver_v10p, NULL},
{"p15", 15, 4, cris_ver_v10p, NULL},
{NULL, 0, 0, NULL}
};
/* All CRIS opcodes are 16 bits.
- The match component is a mask saying which bits must match a
particular opcode in order for an instruction to be an instance
of that opcode.
- The args component is a string containing characters symbolically
matching the operands of an instruction. Used for both assembly
and disassembly.
Operand-matching characters:
B Not really an operand. It causes a "BDAP -size,SP" prefix to be
output for the PUSH alias-instructions and recognizes a
push-prefix at disassembly. Must be followed by a R or P letter.
! Non-match pattern, will not match if there's a prefix insn.
b Non-matching operand, used for branches with 16-bit
displacement. Only recognized by the disassembler.
c 5-bit unsigned immediate in bits <4:0>.
C 4-bit unsigned immediate in bits <3:0>.
D General register in bits <15:12> and <3:0>.
f List of flags in bits <15:12> and <3:0>.
i 6-bit signed immediate in bits <5:0>.
I 6-bit unsigned immediate in bits <5:0>.
M Size modifier (B, W or D) for CLEAR instructions.
m Size modifier (B, W or D) in bits <5:4>
o [-128..127] word offset in bits <7:1> and <0>. Used by 8-bit
branch instructions.
O [-128..127] offset in bits <7:0>. Also matches a comma and a
general register after the expression. Used only for the BDAP
prefix insn.
P Special register in bits <15:12>.
p Indicates that the insn is a prefix insn. Must be first
character.
R General register in bits <15:12>.
r General register in bits <3:0>.
S Source operand in bit <10> and a prefix; a 3-operand prefix
without side-effect.
s Source operand in bits <10> and <3:0>, optionally with a
side-effect prefix.
x Register-dot-modifier, for example "r5.w" in bits <15:12> and <5:4>.
y Like 's' but do not allow an integer at assembly.
z Size modifier (B or W) in bit <4>. */
/* Please note the order of the opcodes in this table is significant.
The assembler requires that all instances of the same mnemonic must
be consecutive. If they aren't, the assembler might not recognize
them, or may indicate and internal error.
The disassembler should not normally care about the order of the
opcodes, but will prefer an earlier alternative if the "match-score"
(see cris-dis.c) is computed as equal.
It should not be significant for proper execution that this table is
in alphabetical order, but please follow that convention for an easy
overview. */
const struct cris_opcode
cris_opcodes[] =
{
{"abs", 0x06B0, 0x0940, "r,R", 0, SIZE_NONE, 0,
cris_abs_op},
{"add", 0x0600, 0x09c0, "m r,R", 0, SIZE_NONE, 0,
cris_reg_mode_add_sub_cmp_and_or_move_op},
{"add", 0x0A00, 0x01c0, "m s,R", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"add", 0x0A00, 0x01c0, "m S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"add", 0x0a00, 0x05c0, "m S,R,r", 0, SIZE_NONE, 0,
cris_three_operand_add_sub_cmp_and_or_op},
{"addi", 0x0500, 0x0Ac0, "x,r", 0, SIZE_NONE, 0,
cris_addi_op},
{"addq", 0x0200, 0x0Dc0, "I,R", 0, SIZE_NONE, 0,
cris_quick_mode_add_sub_op},
{"adds", 0x0420, 0x0Bc0, "z r,R", 0, SIZE_NONE, 0,
cris_reg_mode_add_sub_cmp_and_or_move_op},
{"adds", 0x0820, 0x03c0, "z s,R", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"adds", 0x0820, 0x03c0, "z S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"adds", 0x0820, 0x07c0, "z S,R,r", 0, SIZE_NONE, 0,
cris_three_operand_add_sub_cmp_and_or_op},
{"addu", 0x0400, 0x0be0, "z r,R", 0, SIZE_NONE, 0,
cris_reg_mode_add_sub_cmp_and_or_move_op},
{"addu", 0x0800, 0x03e0, "z s,R", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"addu", 0x0800, 0x03e0, "z S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"addu", 0x0800, 0x07e0, "z S,R,r", 0, SIZE_NONE, 0,
cris_three_operand_add_sub_cmp_and_or_op},
{"and", 0x0700, 0x08C0, "m r,R", 0, SIZE_NONE, 0,
cris_reg_mode_add_sub_cmp_and_or_move_op},
{"and", 0x0B00, 0x00C0, "m s,R", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"and", 0x0B00, 0x00C0, "m S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"and", 0x0B00, 0x04C0, "m S,R,r", 0, SIZE_NONE, 0,
cris_three_operand_add_sub_cmp_and_or_op},
{"andq", 0x0300, 0x0CC0, "i,R", 0, SIZE_NONE, 0,
cris_quick_mode_and_cmp_move_or_op},
{"asr", 0x0780, 0x0840, "m r,R", 0, SIZE_NONE, 0,
cris_asr_op},
{"asrq", 0x03a0, 0x0c40, "c,R", 0, SIZE_NONE, 0,
cris_asrq_op},
{"ax", 0x15B0, 0xEA4F, "", 0, SIZE_NONE, 0,
cris_ax_ei_setf_op},
/* FIXME: Should use branch #defines. */
{"b", 0x0dff, 0x0200, "b", 1, SIZE_NONE, 0,
cris_sixteen_bit_offset_branch_op},
{"ba",
BA_QUICK_OPCODE,
0x0F00+(0xF-CC_A)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"bcc",
BRANCH_QUICK_OPCODE+CC_CC*0x1000,
0x0f00+(0xF-CC_CC)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"bcs",
BRANCH_QUICK_OPCODE+CC_CS*0x1000,
0x0f00+(0xF-CC_CS)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"bdap",
BDAP_INDIR_OPCODE, BDAP_INDIR_Z_BITS, "pm s,R", 0, SIZE_FIELD, 0,
cris_bdap_prefix},
{"bdap",
BDAP_QUICK_OPCODE, BDAP_QUICK_Z_BITS, "pO", 0, SIZE_NONE, 0,
cris_quick_mode_bdap_prefix},
{"beq",
BRANCH_QUICK_OPCODE+CC_EQ*0x1000,
0x0f00+(0xF-CC_EQ)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
/* This is deliberately put before "bext" to trump it, even though not
in alphabetical order. */
{"bwf",
BRANCH_QUICK_OPCODE+CC_EXT*0x1000,
0x0f00+(0xF-CC_EXT)*0x1000, "o", 1, SIZE_NONE,
cris_ver_v10p,
cris_eight_bit_offset_branch_op},
{"bext",
BRANCH_QUICK_OPCODE+CC_EXT*0x1000,
0x0f00+(0xF-CC_EXT)*0x1000, "o", 1, SIZE_NONE,
cris_ver_v0_3,
cris_eight_bit_offset_branch_op},
{"bge",
BRANCH_QUICK_OPCODE+CC_GE*0x1000,
0x0f00+(0xF-CC_GE)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"bgt",
BRANCH_QUICK_OPCODE+CC_GT*0x1000,
0x0f00+(0xF-CC_GT)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"bhi",
BRANCH_QUICK_OPCODE+CC_HI*0x1000,
0x0f00+(0xF-CC_HI)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"bhs",
BRANCH_QUICK_OPCODE+CC_HS*0x1000,
0x0f00+(0xF-CC_HS)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"biap", BIAP_OPCODE, BIAP_Z_BITS, "pm r,R", 0, SIZE_NONE, 0,
cris_biap_prefix},
{"ble",
BRANCH_QUICK_OPCODE+CC_LE*0x1000,
0x0f00+(0xF-CC_LE)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"blo",
BRANCH_QUICK_OPCODE+CC_LO*0x1000,
0x0f00+(0xF-CC_LO)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"bls",
BRANCH_QUICK_OPCODE+CC_LS*0x1000,
0x0f00+(0xF-CC_LS)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"blt",
BRANCH_QUICK_OPCODE+CC_LT*0x1000,
0x0f00+(0xF-CC_LT)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"bmi",
BRANCH_QUICK_OPCODE+CC_MI*0x1000,
0x0f00+(0xF-CC_MI)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"bmod", 0x0ab0, 0x0140, "s,R", 0, SIZE_FIX_32,
cris_ver_sim,
cris_not_implemented_op},
{"bmod", 0x0ab0, 0x0140, "S,D", 0, SIZE_NONE,
cris_ver_sim,
cris_not_implemented_op},
{"bmod", 0x0ab0, 0x0540, "S,R,r", 0, SIZE_NONE,
cris_ver_sim,
cris_not_implemented_op},
{"bne",
BRANCH_QUICK_OPCODE+CC_NE*0x1000,
0x0f00+(0xF-CC_NE)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"bound", 0x05c0, 0x0A00, "m r,R", 0, SIZE_NONE, 0,
cris_two_operand_bound_op},
{"bound", 0x09c0, 0x0200, "m s,R", 0, SIZE_FIELD, 0,
cris_two_operand_bound_op},
{"bound", 0x09c0, 0x0200, "m S,D", 0, SIZE_NONE, 0,
cris_two_operand_bound_op},
{"bound", 0x09c0, 0x0600, "m S,R,r", 0, SIZE_NONE, 0,
cris_three_operand_bound_op},
{"bpl",
BRANCH_QUICK_OPCODE+CC_PL*0x1000,
0x0f00+(0xF-CC_PL)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"break", 0xe930, 0x16c0, "C", 0, SIZE_NONE,
cris_ver_v3p,
cris_break_op},
{"bstore", 0x0af0, 0x0100, "s,R", 0, SIZE_FIX_32,
cris_ver_warning,
cris_not_implemented_op},
{"bstore", 0x0af0, 0x0100, "S,D", 0, SIZE_NONE,
cris_ver_warning,
cris_not_implemented_op},
{"bstore", 0x0af0, 0x0500, "S,R,r", 0, SIZE_NONE,
cris_ver_warning,
cris_not_implemented_op},
{"btst", 0x04F0, 0x0B00, "r,R", 0, SIZE_NONE, 0,
cris_btst_nop_op},
{"btstq", 0x0380, 0x0C60, "c,R", 0, SIZE_NONE, 0,
cris_btst_nop_op},
{"bvc",
BRANCH_QUICK_OPCODE+CC_VC*0x1000,
0x0f00+(0xF-CC_VC)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"bvs",
BRANCH_QUICK_OPCODE+CC_VS*0x1000,
0x0f00+(0xF-CC_VS)*0x1000, "o", 1, SIZE_NONE, 0,
cris_eight_bit_offset_branch_op},
{"clear", 0x0670, 0x3980, "M r", 0, SIZE_NONE, 0,
cris_reg_mode_clear_op},
{"clear", 0x0A70, 0x3180, "M y", 0, SIZE_NONE, 0,
cris_none_reg_mode_clear_test_op},
{"clear", 0x0A70, 0x3180, "M S", 0, SIZE_NONE, 0,
cris_none_reg_mode_clear_test_op},
{"clearf", 0x05F0, 0x0A00, "f", 0, SIZE_NONE, 0,
cris_clearf_di_op},
{"cmp", 0x06C0, 0x0900, "m r,R", 0, SIZE_NONE, 0,
cris_reg_mode_add_sub_cmp_and_or_move_op},
{"cmp", 0x0Ac0, 0x0100, "m s,R", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"cmp", 0x0Ac0, 0x0100, "m S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"cmpq", 0x02C0, 0x0D00, "i,R", 0, SIZE_NONE, 0,
cris_quick_mode_and_cmp_move_or_op},
{"cmps", 0x08e0, 0x0300, "z s,R", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"cmps", 0x08e0, 0x0300, "z S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"cmpu", 0x08c0, 0x0320, "z s,R" , 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"cmpu", 0x08c0, 0x0320, "z S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"di", 0x25F0, 0xDA0F, "", 0, SIZE_NONE, 0,
cris_clearf_di_op},
{"dip", DIP_OPCODE, DIP_Z_BITS, "ps", 0, SIZE_FIX_32, 0,
cris_dip_prefix},
{"div", 0x0980, 0x0640, "m R,r", 0, SIZE_FIELD, 0,
cris_not_implemented_op},
{"dstep", 0x06f0, 0x0900, "r,R", 0, SIZE_NONE, 0,
cris_dstep_logshift_mstep_neg_not_op},
{"ei", 0x25B0, 0xDA4F, "", 0, SIZE_NONE, 0,
cris_ax_ei_setf_op},
{"jbrc", 0x69b0, 0x9640, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_reg_mode_jump_op},
{"jbrc", 0x6930, 0x92c0, "s", 0, SIZE_FIX_32,
cris_ver_v8p,
cris_none_reg_mode_jump_op},
{"jbrc", 0x6930, 0x92c0, "S", 0, SIZE_NONE,
cris_ver_v8p,
cris_none_reg_mode_jump_op},
{"jir", 0xA9b0, 0x5640, "r", 0, SIZE_NONE, 0,
cris_reg_mode_jump_op},
{"jir", 0xA930, 0x52c0, "s", 0, SIZE_FIX_32, 0,
cris_none_reg_mode_jump_op},
{"jir", 0xA930, 0x52c0, "S", 0, SIZE_NONE, 0,
cris_none_reg_mode_jump_op},
{"jirc", 0x29b0, 0xd640, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_reg_mode_jump_op},
{"jirc", 0x2930, 0xd2c0, "s", 0, SIZE_FIX_32,
cris_ver_v8p,
cris_none_reg_mode_jump_op},
{"jirc", 0x2930, 0xd2c0, "S", 0, SIZE_NONE,
cris_ver_v8p,
cris_none_reg_mode_jump_op},
{"jsr", 0xB9b0, 0x4640, "r", 0, SIZE_NONE, 0,
cris_reg_mode_jump_op},
{"jsr", 0xB930, 0x42c0, "s", 0, SIZE_FIX_32, 0,
cris_none_reg_mode_jump_op},
{"jsr", 0xB930, 0x42c0, "S", 0, SIZE_NONE, 0,
cris_none_reg_mode_jump_op},
{"jsrc", 0x39b0, 0xc640, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_reg_mode_jump_op},
{"jsrc", 0x3930, 0xc2c0, "s", 0, SIZE_FIX_32,
cris_ver_v8p,
cris_none_reg_mode_jump_op},
{"jsrc", 0x3930, 0xc2c0, "S", 0, SIZE_NONE,
cris_ver_v8p,
cris_none_reg_mode_jump_op},
{"jump", 0x09b0, 0xF640, "r", 0, SIZE_NONE, 0,
cris_reg_mode_jump_op},
{"jump",
JUMP_INDIR_OPCODE, JUMP_INDIR_Z_BITS, "s", 0, SIZE_FIX_32, 0,
cris_none_reg_mode_jump_op},
{"jump",
JUMP_INDIR_OPCODE, JUMP_INDIR_Z_BITS, "S", 0, SIZE_NONE, 0,
cris_none_reg_mode_jump_op},
{"jmpu", 0x8930, 0x72c0, "s", 0, SIZE_FIX_32,
cris_ver_v10p,
cris_none_reg_mode_jump_op},
{"jmpu", 0x8930, 0x72c0, "S", 0, SIZE_NONE,
cris_ver_v10p,
cris_none_reg_mode_jump_op},
{"lsl", 0x04C0, 0x0B00, "m r,R", 0, SIZE_NONE, 0,
cris_dstep_logshift_mstep_neg_not_op},
{"lslq", 0x03c0, 0x0C20, "c,R", 0, SIZE_NONE, 0,
cris_dstep_logshift_mstep_neg_not_op},
{"lsr", 0x07C0, 0x0800, "m r,R", 0, SIZE_NONE, 0,
cris_dstep_logshift_mstep_neg_not_op},
{"lsrq", 0x03e0, 0x0C00, "c,R", 0, SIZE_NONE, 0,
cris_dstep_logshift_mstep_neg_not_op},
{"lz", 0x0730, 0x08C0, "r,R", 0, SIZE_NONE,
cris_ver_v3p,
cris_not_implemented_op},
{"move", 0x0640, 0x0980, "m r,R", 0, SIZE_NONE, 0,
cris_reg_mode_add_sub_cmp_and_or_move_op},
{"move", 0x0630, 0x09c0, "r,P", 0, SIZE_NONE, 0,
cris_move_to_preg_op},
{"move", 0x0670, 0x0980, "P,r", 0, SIZE_NONE, 0,
cris_reg_mode_move_from_preg_op},
{"move", 0x0BC0, 0x0000, "m R,y", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"move", 0x0BC0, 0x0000, "m D,S", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"move", 0x0A40, 0x0180, "m s,R", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"move", 0x0A40, 0x0180, "m S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"move", 0x0A30, 0x01c0, "s,P", 0, SIZE_SPEC_REG, 0,
cris_move_to_preg_op},
{"move", 0x0A30, 0x01c0, "S,P", 0, SIZE_NONE, 0,
cris_move_to_preg_op},
{"move", 0x0A70, 0x0180, "P,y", 0, SIZE_SPEC_REG, 0,
cris_none_reg_mode_move_from_preg_op},
{"move", 0x0A70, 0x0180, "P,S", 0, SIZE_NONE, 0,
cris_none_reg_mode_move_from_preg_op},
{"movem", 0x0BF0, 0x0000, "R,y", 0, SIZE_FIX_32, 0,
cris_move_reg_to_mem_movem_op},
{"movem", 0x0BF0, 0x0000, "D,S", 0, SIZE_NONE, 0,
cris_move_reg_to_mem_movem_op},
{"movem", 0x0BB0, 0x0040, "s,R", 0, SIZE_FIX_32, 0,
cris_move_mem_to_reg_movem_op},
{"movem", 0x0BB0, 0x0040, "S,D", 0, SIZE_NONE, 0,
cris_move_mem_to_reg_movem_op},
{"moveq", 0x0240, 0x0D80, "i,R", 0, SIZE_NONE, 0,
cris_quick_mode_and_cmp_move_or_op},
{"movs", 0x0460, 0x0B80, "z r,R", 0, SIZE_NONE, 0,
cris_reg_mode_add_sub_cmp_and_or_move_op},
{"movs", 0x0860, 0x0380, "z s,R", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"movs", 0x0860, 0x0380, "z S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"movu", 0x0440, 0x0Ba0, "z r,R", 0, SIZE_NONE, 0,
cris_reg_mode_add_sub_cmp_and_or_move_op},
{"movu", 0x0840, 0x03a0, "z s,R", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"movu", 0x0840, 0x03a0, "z S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"mstep", 0x07f0, 0x0800, "r,R", 0, SIZE_NONE, 0,
cris_dstep_logshift_mstep_neg_not_op},
{"muls", 0x0d00, 0x02c0, "m r,R", 0, SIZE_NONE,
cris_ver_v10p,
cris_muls_op},
{"mulu", 0x0900, 0x06c0, "m r,R", 0, SIZE_NONE,
cris_ver_v10p,
cris_mulu_op},
{"neg", 0x0580, 0x0A40, "m r,R", 0, SIZE_NONE, 0,
cris_dstep_logshift_mstep_neg_not_op},
{"nop", NOP_OPCODE, NOP_Z_BITS, "", 0, SIZE_NONE, 0,
cris_btst_nop_op},
{"not", 0x8770, 0x7880, "r", 0, SIZE_NONE, 0,
cris_dstep_logshift_mstep_neg_not_op},
{"or", 0x0740, 0x0880, "m r,R", 0, SIZE_NONE, 0,
cris_reg_mode_add_sub_cmp_and_or_move_op},
{"or", 0x0B40, 0x0080, "m s,R", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"or", 0x0B40, 0x0080, "m S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"or", 0x0B40, 0x0480, "m S,R,r", 0, SIZE_NONE, 0,
cris_three_operand_add_sub_cmp_and_or_op},
{"orq", 0x0340, 0x0C80, "i,R", 0, SIZE_NONE, 0,
cris_quick_mode_and_cmp_move_or_op},
{"pop", 0x0E6E, 0x0191, "!R", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"pop", 0x0e3e, 0x01c1, "!P", 0, SIZE_NONE, 0,
cris_none_reg_mode_move_from_preg_op},
{"push", 0x0FEE, 0x0011, "BR", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"push", 0x0E7E, 0x0181, "BP", 0, SIZE_NONE, 0,
cris_move_to_preg_op},
{"rbf", 0x3b30, 0xc0c0, "y", 0, SIZE_NONE,
cris_ver_v10p,
cris_not_implemented_op},
{"rbf", 0x3b30, 0xc0c0, "S", 0, SIZE_NONE,
cris_ver_v10p,
cris_not_implemented_op},
{"ret", 0xB67F, 0x4980, "", 1, SIZE_NONE, 0,
cris_reg_mode_move_from_preg_op},
{"retb", 0xe67f, 0x1980, "", 1, SIZE_NONE, 0,
cris_reg_mode_move_from_preg_op},
{"reti", 0xA67F, 0x5980, "", 1, SIZE_NONE, 0,
cris_reg_mode_move_from_preg_op},
{"sbfs", 0x3b70, 0xc080, "y", 0, SIZE_NONE,
cris_ver_v10p,
cris_not_implemented_op},
{"sbfs", 0x3b70, 0xc080, "S", 0, SIZE_NONE,
cris_ver_v10p,
cris_not_implemented_op},
{"sa",
0x0530+CC_A*0x1000,
0x0AC0+(0xf-CC_A)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"scc",
0x0530+CC_CC*0x1000,
0x0AC0+(0xf-CC_CC)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"scs",
0x0530+CC_CS*0x1000,
0x0AC0+(0xf-CC_CS)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"seq",
0x0530+CC_EQ*0x1000,
0x0AC0+(0xf-CC_EQ)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"setf", 0x05b0, 0x0A40, "f", 0, SIZE_NONE, 0,
cris_ax_ei_setf_op},
/* Need to have "swf" in front of "sext" so it is the one displayed in
disassembly. */
{"swf",
0x0530+CC_EXT*0x1000,
0x0AC0+(0xf-CC_EXT)*0x1000, "r", 0, SIZE_NONE,
cris_ver_v10p,
cris_scc_op},
{"sext",
0x0530+CC_EXT*0x1000,
0x0AC0+(0xf-CC_EXT)*0x1000, "r", 0, SIZE_NONE,
cris_ver_v0_3,
cris_scc_op},
{"sge",
0x0530+CC_GE*0x1000,
0x0AC0+(0xf-CC_GE)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"sgt",
0x0530+CC_GT*0x1000,
0x0AC0+(0xf-CC_GT)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"shi",
0x0530+CC_HI*0x1000,
0x0AC0+(0xf-CC_HI)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"shs",
0x0530+CC_HS*0x1000,
0x0AC0+(0xf-CC_HS)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"sle",
0x0530+CC_LE*0x1000,
0x0AC0+(0xf-CC_LE)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"slo",
0x0530+CC_LO*0x1000,
0x0AC0+(0xf-CC_LO)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"sls",
0x0530+CC_LS*0x1000,
0x0AC0+(0xf-CC_LS)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"slt",
0x0530+CC_LT*0x1000,
0x0AC0+(0xf-CC_LT)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"smi",
0x0530+CC_MI*0x1000,
0x0AC0+(0xf-CC_MI)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"sne",
0x0530+CC_NE*0x1000,
0x0AC0+(0xf-CC_NE)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"spl",
0x0530+CC_PL*0x1000,
0x0AC0+(0xf-CC_PL)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"sub", 0x0680, 0x0940, "m r,R", 0, SIZE_NONE, 0,
cris_reg_mode_add_sub_cmp_and_or_move_op},
{"sub", 0x0a80, 0x0140, "m s,R", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"sub", 0x0a80, 0x0140, "m S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"sub", 0x0a80, 0x0540, "m S,R,r", 0, SIZE_NONE, 0,
cris_three_operand_add_sub_cmp_and_or_op},
{"subq", 0x0280, 0x0d40, "I,R", 0, SIZE_NONE, 0,
cris_quick_mode_add_sub_op},
{"subs", 0x04a0, 0x0b40, "z r,R", 0, SIZE_NONE, 0,
cris_reg_mode_add_sub_cmp_and_or_move_op},
{"subs", 0x08a0, 0x0340, "z s,R", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"subs", 0x08a0, 0x0340, "z S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"subs", 0x08a0, 0x0740, "z S,R,r", 0, SIZE_NONE, 0,
cris_three_operand_add_sub_cmp_and_or_op},
{"subu", 0x0480, 0x0b60, "z r,R", 0, SIZE_NONE, 0,
cris_reg_mode_add_sub_cmp_and_or_move_op},
{"subu", 0x0880, 0x0360, "z s,R", 0, SIZE_FIELD, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"subu", 0x0880, 0x0360, "z S,D", 0, SIZE_NONE, 0,
cris_none_reg_mode_add_sub_cmp_and_or_move_op},
{"subu", 0x0880, 0x0760, "z S,R,r", 0, SIZE_NONE, 0,
cris_three_operand_add_sub_cmp_and_or_op},
{"svc",
0x0530+CC_VC*0x1000,
0x0AC0+(0xf-CC_VC)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
{"svs",
0x0530+CC_VS*0x1000,
0x0AC0+(0xf-CC_VS)*0x1000, "r", 0, SIZE_NONE, 0,
cris_scc_op},
/* The insn "swapn" is the same as "not" and will be disassembled as
such, but the swap* family of mnmonics are generally v8-and-higher
only, so count it in. */
{"swapn", 0x8770, 0x7880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapw", 0x4770, 0xb880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapnw", 0xc770, 0x3880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapb", 0x2770, 0xd880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapnb", 0xA770, 0x5880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapwb", 0x6770, 0x9880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapnwb", 0xE770, 0x1880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapr", 0x1770, 0xe880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapnr", 0x9770, 0x6880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapwr", 0x5770, 0xa880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapnwr", 0xd770, 0x2880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapbr", 0x3770, 0xc880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapnbr", 0xb770, 0x4880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapwbr", 0x7770, 0x8880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"swapnwbr", 0xf770, 0x0880, "r", 0, SIZE_NONE,
cris_ver_v8p,
cris_not_implemented_op},
{"test", 0x0640, 0x0980, "m D", 0, SIZE_NONE, 0,
cris_reg_mode_test_op},
{"test", 0x0b80, 0xf040, "m s", 0, SIZE_FIELD, 0,
cris_none_reg_mode_clear_test_op},
{"test", 0x0b80, 0xf040, "m S", 0, SIZE_NONE, 0,
cris_none_reg_mode_clear_test_op},
{"xor", 0x07B0, 0x0840, "r,R", 0, SIZE_NONE, 0,
cris_xor_op},
{NULL, 0, 0, NULL, 0, 0, 0, cris_not_implemented_op}
};
/* Condition-names, indexed by the CC_* numbers as found in cris.h. */
const char * const
cris_cc_strings[] =
{
"hs",
"lo",
"ne",
"eq",
"vc",
"vs",
"pl",
"mi",
"ls",
"hi",
"ge",
"lt",
"gt",
"le",
"a",
/* In v0, this would be "ext". */
"wf",
};
/*
* Local variables:
* eval: (c-set-style "gnu")
* indent-tabs-mode: t
* End:
*/

View File

@ -25,6 +25,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define ARCH_arc
#define ARCH_arm
#define ARCH_avr
#define ARCH_cris
#define ARCH_d10v
#define ARCH_d30v
#define ARCH_h8300
@ -103,6 +104,11 @@ disassembler (abfd)
disassemble = print_insn_avr;
break;
#endif
#ifdef ARCH_cris
case bfd_arch_cris:
disassemble = print_insn_cris;
break;
#endif
#ifdef ARCH_d10v
case bfd_arch_d10v:
disassemble = print_insn_d10v;

View File

@ -9,12 +9,14 @@ avr-dis.c
cgen-asm.c
cgen-dis.c
cgen-opc.c
cris-dis.c
cris-opc.c
d10v-dis.c
d10v-opc.c
d30v-dis.c
d30v-opc.c
disassemble.c
dis-buf.c
disassemble.c
fr30-asm.c
fr30-desc.c
fr30-desc.h
@ -36,12 +38,12 @@ ia64-dis.c
ia64-gen.c
ia64-opc-a.c
ia64-opc-b.c
ia64-opc.c
ia64-opc-d.c
ia64-opc-f.c
ia64-opc.h
ia64-opc-i.c
ia64-opc-m.c
ia64-opc.c
ia64-opc.h
m10200-dis.c
m10200-opc.c
m10300-dis.c
@ -61,9 +63,9 @@ m68k-opc.c
m88k-dis.c
mcore-dis.c
mcore-opc.h
mips16-opc.c
mips-dis.c
mips-opc.c
mips16-opc.c
ns32k-dis.c
pj-dis.c
pj-opc.c
@ -85,5 +87,5 @@ vax-dis.c
w65-dis.c
w65-opc.h
z8k-dis.c
z8kgen.c
z8k-opc.h
z8kgen.c

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2000-06-18 17:38-0700\n"
"POT-Creation-Date: 2000-07-20 16:47+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -48,21 +48,21 @@ msgstr ""
msgid "branch address not on 4 byte boundary"
msgstr ""
#: arm-dis.c:476
#: arm-dis.c:466
msgid "<illegal precision>"
msgstr ""
#: arm-dis.c:888
#: arm-dis.c:878
#, c-format
msgid "Unrecognised register name set: %s\n"
msgstr ""
#: arm-dis.c:895
#: arm-dis.c:885
#, c-format
msgid "Unrecognised disassembler option: %s\n"
msgstr ""
#: arm-dis.c:1059
#: arm-dis.c:1049
msgid ""
"\n"
"The following ARM specific disassembler options are supported for use with\n"
@ -184,23 +184,23 @@ msgstr ""
msgid "Unrecognized field %d while setting vma operand.\n"
msgstr ""
#: h8300-dis.c:382
#: h8300-dis.c:380
#, c-format
msgid "Hmmmm %x"
msgstr ""
#: h8300-dis.c:393
#: h8300-dis.c:391
#, c-format
msgid "Don't understand %x \n"
msgstr ""
#: h8500-dis.c:140
#: h8500-dis.c:141
#, c-format
msgid "can't cope with insert %d\n"
msgstr ""
#. Couldn't understand anything
#: h8500-dis.c:345
#. Couldn't understand anything.
#: h8500-dis.c:348
#, c-format
msgid "%02x\t\t*unknown*"
msgstr ""