aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/mach-o-x86-64.c3
-rw-r--r--include/mach-o/ChangeLog5
-rw-r--r--include/mach-o/loader.h9
4 files changed, 20 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 99285f3..c9af9da 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2014-04-16 Tristan Gingold <gingold@adacore.com>
+
+ * mach-o-x86-64.c (bfd_mach_o_x86_64_mkobject): Adjust cpusubtype
+ flag.
+
2014-04-16 Alan Modra <amodra@gmail.com>
* elf32-ppc.c (ppc_elf_relocate_section): Fill 476 fixup area
diff --git a/bfd/mach-o-x86-64.c b/bfd/mach-o-x86-64.c
index 221c030..017a6b8 100644
--- a/bfd/mach-o-x86-64.c
+++ b/bfd/mach-o-x86-64.c
@@ -53,7 +53,8 @@ bfd_mach_o_x86_64_mkobject (bfd *abfd)
mdata = bfd_mach_o_get_data (abfd);
mdata->header.magic = BFD_MACH_O_MH_MAGIC_64;
mdata->header.cputype = BFD_MACH_O_CPU_TYPE_X86_64;
- mdata->header.cpusubtype = BFD_MACH_O_CPU_SUBTYPE_X86_ALL;
+ mdata->header.cpusubtype =
+ BFD_MACH_O_CPU_SUBTYPE_X86_ALL | BFD_MACH_O_CPU_SUBTYPE_LIB64;
mdata->header.byteorder = BFD_ENDIAN_LITTLE;
mdata->header.version = 2;
diff --git a/include/mach-o/ChangeLog b/include/mach-o/ChangeLog
index 284e845..0f2721a 100644
--- a/include/mach-o/ChangeLog
+++ b/include/mach-o/ChangeLog
@@ -1,3 +1,8 @@
+2014-04-16 Tristan Gingold <gingold@adacore.com>
+
+ * loader.h (BFD_MACH_O_CPU_ARCH_MASK, BFD_MACH_O_CPU_ARCH_ABI64)
+ (BFD_MACH_O_CPU_SUBTYPE_MASK, BFD_MACH_O_CPU_SUBTYPE_LIB64): Define.
+
2014-04-03 Tristan Gingold <gingold@adacore.com>
* unwind.h (mach_o_compact_unwind_64): Fix typo in personality.
diff --git a/include/mach-o/loader.h b/include/mach-o/loader.h
index 952346d..20cfe42 100644
--- a/include/mach-o/loader.h
+++ b/include/mach-o/loader.h
@@ -32,7 +32,10 @@ typedef enum bfd_mach_o_mach_header_magic
}
bfd_mach_o_mach_header_magic;
-#define BFD_MACH_O_CPU_IS64BIT 0x1000000
+/* Capability bits in cpu type. */
+#define BFD_MACH_O_CPU_ARCH_MASK 0xff000000
+#define BFD_MACH_O_CPU_ARCH_ABI64 0x01000000
+#define BFD_MACH_O_CPU_IS64BIT 0x01000000
typedef enum bfd_mach_o_cpu_type
{
@@ -57,6 +60,10 @@ typedef enum bfd_mach_o_cpu_type
}
bfd_mach_o_cpu_type;
+/* Capability bits in cpu subtype. */
+#define BFD_MACH_O_CPU_SUBTYPE_MASK 0xff000000
+#define BFD_MACH_O_CPU_SUBTYPE_LIB64 0x80000000
+
typedef enum bfd_mach_o_cpu_subtype
{
/* i386. */