* som.c (struct reloc_queue): New structure to keep track of
authorJeff Law <law@redhat.com>
Fri, 12 Nov 1993 23:43:24 +0000 (23:43 +0000)
committerJeff Law <law@redhat.com>
Fri, 12 Nov 1993 23:43:24 +0000 (23:43 +0000)
the last four multibyte relocations emitted.
(enum pa_symbol_type): Type to fully describe the symbol types
associated with .import/.export assembler directives.

bfd/ChangeLog
bfd/som.c

index a50a6f91b79ab2edea38f1699a2802f77d9e2876..545dec67d4a25b20ab74ab865845aa9059547714 100644 (file)
@@ -1,5 +1,10 @@
 Fri Nov 12 15:29:36 1993  Jeffrey A. Law  (law@snake.cs.utah.edu)
 
+       * som.c (struct reloc_queue): New structure to keep track of
+       the last four multibyte relocations emitted.
+       (enum pa_symbol_type): Type to fully describe the symbol types
+       associated with .import/.export assembler directives.
+
        * som.c: Include libhppa.h
 
        * som.c (bfd_som_set_section_attributes): New function.
index 707ed925835d750e104b1d3ac44f9e291a045b8d..47d0b4888035499cc1b020a04b6ee10d3a597cce 100644 (file)
--- a/bfd/som.c
+++ b/bfd/som.c
      ((__m_num) >= _PA_RISC1_1_ID && (__m_num) <= _PA_RISC_MAXID))
 #endif /* _PA_RISC_ID */
 
+/* SOM allows any one of the four previous relocations to be reused
+   with a "R_PREV_FIXUP" relocation entry.  Since R_PREV_FIXUP
+   relocations are always a single byte, using a R_PREV_FIXUP instead
+   of some multi-byte relocation makes object files smaller. 
+
+   Note one side effect of using a R_PREV_FIXUP is the relocation that
+   is being repeated moves to the front of the queue.  */
+struct reloc_queue
+  {
+    unsigned char *reloc;
+    unsigned int size;
+  } reloc_queue[4];
+
+/* This fully describes the symbol types which may be attached to
+   an EXPORT or IMPORT directive.  Only SOM uses this formation
+   (ELF has no need for it).  */
+typedef enum
+{
+  SYMBOL_TYPE_UNKNOWN,
+  SYMBOL_TYPE_ABSOLUTE,
+  SYMBOL_TYPE_CODE,
+  SYMBOL_TYPE_DATA,
+  SYMBOL_TYPE_ENTRY,
+  SYMBOL_TYPE_MILLICODE,
+  SYMBOL_TYPE_PLABEL,
+  SYMBOL_TYPE_PRI_PROG,
+  SYMBOL_TYPE_SEC_PROG,
+} pa_symbol_type;
+
 /* Forward declarations */
 
 static boolean som_mkobject PARAMS ((bfd *));
This page took 0.029372 seconds and 4 git commands to generate.