daily update
[deliverable/binutils-gdb.git] / bfd / mach-o.h
index 62f7709fc7d3765403a93e1cd3ab234d6668363d..d4ca600c46e57d1c6fe6034c47b7654a6de8339d 100644 (file)
@@ -396,6 +396,17 @@ bfd_mach_o_segment_command;
 #define BFD_MACH_O_GENERIC_RELOC_PB_LA_PTR     3
 #define BFD_MACH_O_GENERIC_RELOC_LOCAL_SECTDIFF        4
 
+/* X86-64 relocations.  */
+#define BFD_MACH_O_X86_64_RELOC_UNSIGNED   0 /* Absolute addresses.  */
+#define BFD_MACH_O_X86_64_RELOC_SIGNED     1 /* 32-bit disp.  */
+#define BFD_MACH_O_X86_64_RELOC_BRANCH     2 /* 32-bit pcrel disp.  */
+#define BFD_MACH_O_X86_64_RELOC_GOT_LOAD   3 /* Movq load of a GOT entry.  */
+#define BFD_MACH_O_X86_64_RELOC_GOT        4 /* GOT reference.  */
+#define BFD_MACH_O_X86_64_RELOC_SUBTRACTOR 5 /* Symbol difference.  */
+#define BFD_MACH_O_X86_64_RELOC_SIGNED_1   6 /* 32-bit signed disp -1.  */
+#define BFD_MACH_O_X86_64_RELOC_SIGNED_2   7 /* 32-bit signed disp -2.  */
+#define BFD_MACH_O_X86_64_RELOC_SIGNED_4   8 /* 32-bit signed disp -4.  */
+
 /* Size of a relocation entry.  */
 #define BFD_MACH_O_RELENT_SIZE 8
 
@@ -845,6 +856,7 @@ bfd_mach_o_data_struct;
 /* Target specific routines.  */
 typedef struct bfd_mach_o_backend_data
 {
+  enum bfd_architecture arch;
   bfd_boolean (*_bfd_mach_o_swap_reloc_in)(arelent *, bfd_mach_o_reloc_info *);
   bfd_boolean (*_bfd_mach_o_swap_reloc_out)(arelent *, bfd_mach_o_reloc_info *);
   bfd_boolean (*_bfd_mach_o_print_thread)(bfd *, bfd_mach_o_thread_flavour *,
@@ -865,6 +877,8 @@ const bfd_target *bfd_mach_o_object_p (bfd *);
 const bfd_target *bfd_mach_o_core_p (bfd *);
 const bfd_target *bfd_mach_o_archive_p (bfd *);
 bfd *bfd_mach_o_openr_next_archived_file (bfd *, bfd *);
+bfd_boolean bfd_mach_o_set_arch_mach (bfd *, enum bfd_architecture,
+                                      unsigned long);
 int bfd_mach_o_lookup_section (bfd *, asection *, bfd_mach_o_load_command **, bfd_mach_o_section **);
 int bfd_mach_o_lookup_command (bfd *, bfd_mach_o_load_command_type, bfd_mach_o_load_command **);
 bfd_boolean bfd_mach_o_write_contents (bfd *);
This page took 0.023155 seconds and 4 git commands to generate.