mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-26 17:18:55 +00:00
2010-07-08 Tejas Belagod <tejas.belagod@arm.com>
gas/testsuite * gas/arm/barrier.s: New file. * gas/arm/barrier.d: New file. * gas/arm/barrier-thumb.s: New file. * gas/arm/barrier-thumb.d: New file. * gas/arm/barrier-bad.s: New file. * gas/arm/barrier-bad.d: New file. * gas/arm/barrier-bad.l: New file. * gas/arm/barrier-bad-thumb.s: New file. * gas/arm/barrier-bad-thumb.d: New file. * gas/arm/barrier-bad-thumb.l: New file. gas/config * tc-arm.c (OP_oBARRIER): Remove. (OP_oBARRIER_I15): Add. (po_barrier_or_imm): Add macro. (parse_operands): Improve OP_oBARRIER_I15 operand parsing. (do_barrier): Check correct immediate range. (do_t_barrier): Likewise. (barrier_opt_names): Add entries for more symbolic operands. (insns): Replace OP_oBARRIER with OP_oBARRIER_I15 for barriers. opcodes/ * arm-dis.c (print_insn_arm): Add cases for printing more symbolic operands. (print_insn_thumb32): Likewise.
This commit is contained in:
@@ -3155,15 +3155,32 @@ print_insn_arm (bfd_vma pc, struct disassemble_info *info, long given)
|
||||
break;
|
||||
|
||||
case 'U':
|
||||
switch (given & 0xf)
|
||||
if ((given & 0xf0) == 0x60)
|
||||
{
|
||||
case 0xf: func (stream, "sy"); break;
|
||||
case 0x7: func (stream, "un"); break;
|
||||
case 0xe: func (stream, "st"); break;
|
||||
case 0x6: func (stream, "unst"); break;
|
||||
default:
|
||||
func (stream, "#%d", (int) given & 0xf);
|
||||
break;
|
||||
switch (given & 0xf)
|
||||
{
|
||||
case 0xf: func (stream, "sy"); break;
|
||||
default:
|
||||
func (stream, "#%d", (int) given & 0xf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
switch (given & 0xf)
|
||||
{
|
||||
case 0xf: func (stream, "sy"); break;
|
||||
case 0x7: func (stream, "un"); break;
|
||||
case 0xe: func (stream, "st"); break;
|
||||
case 0x6: func (stream, "unst"); break;
|
||||
case 0xb: func (stream, "ish"); break;
|
||||
case 0xa: func (stream, "ishst"); break;
|
||||
case 0x3: func (stream, "osh"); break;
|
||||
case 0x2: func (stream, "oshst"); break;
|
||||
default:
|
||||
func (stream, "#%d", (int) given & 0xf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -3998,16 +4015,33 @@ print_insn_thumb32 (bfd_vma pc, struct disassemble_info *info, long given)
|
||||
break;
|
||||
|
||||
case 'U':
|
||||
switch (given & 0xf)
|
||||
if ((given & 0xf0) == 0x60)
|
||||
{
|
||||
case 0xf: func (stream, "sy"); break;
|
||||
case 0x7: func (stream, "un"); break;
|
||||
case 0xe: func (stream, "st"); break;
|
||||
case 0x6: func (stream, "unst"); break;
|
||||
default:
|
||||
func (stream, "#%d", (int) given & 0xf);
|
||||
break;
|
||||
switch (given & 0xf)
|
||||
{
|
||||
case 0xf: func (stream, "sy"); break;
|
||||
default:
|
||||
func (stream, "#%d", (int) given & 0xf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
switch (given & 0xf)
|
||||
{
|
||||
case 0xf: func (stream, "sy"); break;
|
||||
case 0x7: func (stream, "un"); break;
|
||||
case 0xe: func (stream, "st"); break;
|
||||
case 0x6: func (stream, "unst"); break;
|
||||
case 0xb: func (stream, "ish"); break;
|
||||
case 0xa: func (stream, "ishst"); break;
|
||||
case 0x3: func (stream, "osh"); break;
|
||||
case 0x2: func (stream, "oshst"); break;
|
||||
default:
|
||||
func (stream, "#%d", (int) given & 0xf);
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 'C':
|
||||
|
||||
Reference in New Issue
Block a user