aboutsummaryrefslogtreecommitdiff
path: root/opcodes/a29k-dis.c
diff options
context:
space:
mode:
authorAndreas Jaeger <aj@suse.de>2001-08-21 08:42:28 +0000
committerAndreas Jaeger <aj@suse.de>2001-08-21 08:42:28 +0000
commit7fa108a4d514745631ce8ef6401cb51f1d0b8966 (patch)
tree9fa663b1874d12695bbd783bbdb4718f7c439953 /opcodes/a29k-dis.c
parent5a65713f64ae0629f9b2255d72e8f52fefa13d68 (diff)
downloadfsf-binutils-gdb-7fa108a4d514745631ce8ef6401cb51f1d0b8966.zip
fsf-binutils-gdb-7fa108a4d514745631ce8ef6401cb51f1d0b8966.tar.gz
fsf-binutils-gdb-7fa108a4d514745631ce8ef6401cb51f1d0b8966.tar.bz2
* i960-dis.c: Add parameters for prototypes
(ctrl): Add unused attributes. (cobr): Likewise. (put_abs): Likewise. * mips-dis.c: Add missing prototypes. * a29k-dis.c: Likewise. * arc-dis.c: Likewise. * ia64-opc.c: Likewise. * s390-dis.c: Add missing prototypes. (init_disasm): Remove unused attribute since the parameter is used.
Diffstat (limited to 'opcodes/a29k-dis.c')
-rw-r--r--opcodes/a29k-dis.c26
1 files changed, 19 insertions, 7 deletions
diff --git a/opcodes/a29k-dis.c b/opcodes/a29k-dis.c
index 3c86167..0e937ba 100644
--- a/opcodes/a29k-dis.c
+++ b/opcodes/a29k-dis.c
@@ -1,5 +1,5 @@
/* Instruction printing code for the AMD 29000
- Copyright 1990, 1993, 1994, 1995, 1998, 2000
+ Copyright 1990, 1993, 1994, 1995, 1998, 2000, 2001
Free Software Foundation, Inc.
Contributed by Cygnus Support. Written by Jim Kingdon.
@@ -23,6 +23,18 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#include "dis-asm.h"
#include "opcode/a29k.h"
+static void print_general PARAMS ((int, struct disassemble_info *));
+static void print_special PARAMS ((unsigned int, struct disassemble_info *));
+static int is_delayed_branch PARAMS ((int));
+static void find_bytes_little
+ PARAMS ((char *, unsigned char *, unsigned char *, unsigned char *,
+ unsigned char *));
+static void find_bytes_big
+ PARAMS ((char *, unsigned char *, unsigned char *, unsigned char *,
+ unsigned char *));
+static int print_insn PARAMS ((bfd_vma, struct disassemble_info *));
+
+
/* Print a symbolic representation of a general-purpose
register number NUM on STREAM.
NUM is a number as found in the instruction, not as found in
@@ -39,7 +51,7 @@ print_general (num, info)
}
/* Like print_general but a special-purpose register.
-
+
The mnemonics used by the AMD assembler are not quite the same
as the ones in the User's Manual. We use the ones that the
assembler uses. */
@@ -171,7 +183,7 @@ print_insn (memaddr, info)
if (((unsigned long) insn24 << 24) == opcode->opcode)
{
char *s;
-
+
(*info->fprintf_func) (info->stream, "%s ", opcode->name);
for (s = opcode->args; *s != '\0'; ++s)
{
@@ -180,7 +192,7 @@ print_insn (memaddr, info)
case 'a':
print_general (insn8, info);
break;
-
+
case 'b':
print_general (insn0, info);
break;
@@ -281,7 +293,7 @@ print_insn (memaddr, info)
int errcode;
char prev_insn[4];
unsigned char prev_insn0, prev_insn8, prev_insn16, prev_insn24;
-
+
errcode = (*info->read_memory_func) (memaddr - 4,
(bfd_byte *) &prev_insn[0],
4,
@@ -291,7 +303,7 @@ print_insn (memaddr, info)
/* If it is a delayed branch, we need to look at the
instruction before the delayed brach to handle
things like
-
+
const _foo
call _printf
consth _foo
@@ -306,7 +318,7 @@ print_insn (memaddr, info)
&prev_insn16, &prev_insn24);
}
}
-
+
/* If there was a problem reading memory, then assume
the previous instruction was not const. */
if (errcode == 0)