From 344ea7b658c4b9d4f5133ab3cedc9ec24f4f7e33 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Thu, 18 Jun 2009 10:31:20 +0000 Subject: [PATCH] PR 10288 * arm-dis.c (print_insn_coprocessor): Check that a user specified ARM architecture supports the matched instruction. (print_insn_arm): Likewise. (select_arm_features): New function. Fills in the fields of an arm_feature_set structure based on a given arm machine number. (print_insn): Initialise an arm_feature_set structure. * objdump.c (disassemble_bytes): Set the USER_SPECIFIED_MACHINE_TYPE flag in the disassemble_info structure if the user has invoked the -m switch. * doc/binutils.texi: Document the additional behaviour of objdump's -m switch for ARM targets. * dis-asm.h (USER_SPECIFIED_MACHINE_TYPE): New value for the flags field of struct disassemble_info. * gas/arm/align.s: Add labels so that COFF based targets can correctly locate THUMB code. * gas/arm/copro.d: Do not pass --architecture switch to objdump. --- include/ChangeLog | 9 +++++++-- include/dis-asm.h | 3 +++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/include/ChangeLog b/include/ChangeLog index 6742d24c9..8f857749e 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,11 +1,16 @@ +2009-06-18 Nick Clifton + + * dis-asm.h (USER_SPECIFIED_MACHINE_TYPE): New value for the flags + field of struct disassemble_info. + 2009-06-09 Ian Lance Taylor * ansidecl.h (ATTRIBUTE_UNUSED_LABEL): Define for C++. 2009-06-15 Nick Clifton - * dis-asm.h (struct disassemble_info): New value for the flags - field. + * dis-asm.h (DISASSEMBLE_DATA): New value for the flags field of + struct disassemble_info. 2009-06-02 Ian Lance Taylor diff --git a/include/dis-asm.h b/include/dis-asm.h index 3872f8b2d..b7949c177 100644 --- a/include/dis-asm.h +++ b/include/dis-asm.h @@ -113,6 +113,9 @@ typedef struct disassemble_info #define INSN_HAS_RELOC (1 << 31) /* Set if the user has requested the disassembly of data as well as code. */ #define DISASSEMBLE_DATA (1 << 30) + /* Set if the user has specifically set the machine type encoded in the + mach field of this structure. */ +#define USER_SPECIFIED_MACHINE_TYPE (1 << 29) /* Use internally by the target specific disassembly code. */ void *private_data;