aboutsummaryrefslogtreecommitdiff
path: root/bfd/libcoff-in.h
diff options
context:
space:
mode:
Diffstat (limited to 'bfd/libcoff-in.h')
-rw-r--r--bfd/libcoff-in.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/bfd/libcoff-in.h b/bfd/libcoff-in.h
index bb690bb..f8d9d16 100644
--- a/bfd/libcoff-in.h
+++ b/bfd/libcoff-in.h
@@ -97,6 +97,33 @@ typedef struct pe_tdata
#define pe_data(bfd) ((bfd)->tdata.pe_obj_data)
+/* Tdata for XCOFF files. */
+
+struct xcoff_tdata
+{
+ /* Basic COFF information. */
+ coff_data_type coff;
+
+ /* TOC value. */
+ bfd_vma toc;
+
+ /* .text alignment from optional header. */
+ int text_align_power;
+
+ /* .data alignment from optional header. */
+ int data_align_power;
+
+ /* modtype from optional header. */
+ short modtype;
+
+ /* maxdata from optional header. */
+ bfd_size_type maxdata;
+
+ /* maxstack from optional header. */
+ bfd_size_type maxstack;
+};
+
+#define xcoff_data(abfd) ((abfd)->tdata.xcoff_obj_data)
/* We take the address of the first element of a asymbol to ensure that the
* macro is only ever applied to an asymbol. */
@@ -115,6 +142,11 @@ struct coff_section_tdata
bfd_byte *contents;
/* If this is true, the contents entry may not be freed. */
boolean keep_contents;
+ /* Information cached by coff_find_nearest_line. */
+ bfd_vma offset;
+ unsigned int i;
+ const char *function;
+ int line_base;
/* Available for individual backends. */
PTR tdata;
};