2001-10-12 John Healy <jhealy@redhat.com>
authorJohn Healy <jhealy@redhat.com>
Fri, 12 Oct 2001 18:28:57 +0000 (18:28 +0000)
committerJohn Healy <jhealy@redhat.com>
Fri, 12 Oct 2001 18:28:57 +0000 (18:28 +0000)
        * cgen-dis.in (print_insn): Use min (cd->base_insn_bitsize, buflen*8)
        for the length when extracting the base part of the insn.

opcodes/ChangeLog
opcodes/cgen-dis.in

index b0ef719..e241f60 100644 (file)
@@ -1,3 +1,8 @@
+2001-10-12  John Healy  <jhealy@redhat.com>
+
+       * cgen-dis.in (print_insn): Use min (cd->base_insn_bitsize, buflen*8)
+       for the length when extracting the base part of the insn.
+
 2001-10-09  Bruno Haible  <haible@clisp.cons.org>
 
        * cgen-asm.in (*_cgen_build_insn_regex): Generate a case sensitive
index 7065644..f2c9dd5 100644 (file)
@@ -218,9 +218,13 @@ print_insn (cd, pc, info, buf, buflen)
   CGEN_INSN_INT insn_value;
   const CGEN_INSN_LIST *insn_list;
   CGEN_EXTRACT_INFO ex_info;
+  int basesize;
 
   /* Extract base part of instruction, just in case CGEN_DIS_* uses it. */
-  insn_value = cgen_get_insn_value (cd, buf, buflen * 8);
+  basesize = cd->base_insn_bitsize < buflen * 8 ?
+                                     cd->base_insn_bitsize : buflen * 8;
+  insn_value = cgen_get_insn_value (cd, buf, basesize);
+
 
   /* Fill in ex_info fields like read_insn would.  Don't actually call
      read_insn, since the incoming buffer is already read (and possibly