mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-26 03:24:41 +08:00
* ia64-dis.c (print_insn_ia64): Get byte skip count correct
for MLI templates. Handle IA64_OPND_TGT64.
This commit is contained in:
parent
2d484c7fa2
commit
0228082a3c
@ -1,3 +1,8 @@
|
||||
2000-08-07 Richard Henderson <rth@cygnus.com>
|
||||
|
||||
* ia64-dis.c (print_insn_ia64): Get byte skip count correct
|
||||
for MLI templates. Handle IA64_OPND_TGT64.
|
||||
|
||||
2000-07-29 Marek Michalkiewicz <marekm@linux.org.pl>
|
||||
|
||||
* avr-dis.c (avr_operand): Use PARAMS macro in declaration.
|
||||
|
@ -117,7 +117,7 @@ print_insn_ia64 (bfd_vma memaddr, struct disassemble_info *info)
|
||||
{
|
||||
/* skip L slot in MLI template: */
|
||||
slotnum = 2;
|
||||
retval += slot_multiplier;
|
||||
retval = 16 - slot_multiplier;
|
||||
}
|
||||
|
||||
insn = slot[slotnum];
|
||||
@ -165,6 +165,13 @@ print_insn_ia64 (bfd_vma memaddr, struct disassemble_info *info)
|
||||
| (((insn >> 36) & 0x1) << 20)
|
||||
| ((insn >> 6) & 0xfffff);
|
||||
}
|
||||
else if (odesc - elf64_ia64_operands == IA64_OPND_TGT64)
|
||||
{
|
||||
/* 60-bit immedate for long branches. */
|
||||
value = (((insn >> 13) & 0xfffff)
|
||||
| (((insn >> 36) & 1) << 59)
|
||||
| (slot[1] << 20)) << 4;
|
||||
}
|
||||
else
|
||||
{
|
||||
err = (*odesc->extract) (odesc, insn, &value);
|
||||
|
Loading…
Reference in New Issue
Block a user