arm-pe objdump -P

Alan Modra amodra@gmail.com
Tue May 30 04:23:54 GMT 2023


arm-pe looks to be a very old PE implementation, incompatible with
current arm-wince-pe.  arm-pe has different relocations and uses
ARMMAGIC which has this comment: "I just made this up".  Well, OK, I
don't know the history but it was probably before Microsoft "just made
up" their constants for ARM windows CE.

This patch supports objdump -P for arm-pe, and another magic constant
that may appear in object files.  (I don't think binutils generates
files using ARMV7PEMAGIC aka IMAGE_FILE_MACHINE_ARMNT.)

	* od-pe.c (is_pe_object_magic): Handle IMAGE_FILE_MACHINE_ARMNT
	and ARMMAGIC.

diff --git a/binutils/od-pe.c b/binutils/od-pe.c
index 5f03bd8c3da..5a57a6e7486 100644
--- a/binutils/od-pe.c
+++ b/binutils/od-pe.c
@@ -450,6 +450,7 @@ is_pe_object_magic (unsigned short magic)
     case IMAGE_FILE_MACHINE_ALPHA:
     case IMAGE_FILE_MACHINE_ARM:
     case IMAGE_FILE_MACHINE_ARM64:
+    case IMAGE_FILE_MACHINE_ARMNT:
     case IMAGE_FILE_MACHINE_I386:
     case IMAGE_FILE_MACHINE_IA64:
     case IMAGE_FILE_MACHINE_POWERPC:
@@ -457,6 +458,7 @@ is_pe_object_magic (unsigned short magic)
     case IMAGE_FILE_MACHINE_AMD64:
       // FIXME: Add more machine numbers.
       return true;
+    case 0x0a00: /* ARMMAGIC */
     case 0x0500: /* SH_ARCH_MAGIC_BIG */
     case 0x0550: /* SH_ARCH_MAGIC_LITTLE */
     case 0x0b00: /* MCore */

-- 
Alan Modra
Australia Development Lab, IBM


More information about the Binutils mailing list