Added new macro NEWHOWTO
[deliverable/binutils-gdb.git] / bfd / reloc.c
index 0e4edd0629dd5d4ac029aa57d70663e7c3dd148f..e30f936091efdb1d3ed200ab2001672f25d885a9 100644 (file)
@@ -361,6 +361,34 @@ The HOWTO define is horrible and will go away.
   {(unsigned)C,R,S,B, P, BI, ABS,O,SF,NAME,INPLACE,MASKSRC,MASKDST,PC}
 *-
 
+And will be replaced with the totally magic way. But for the moment,
+we are compatible, so do it this way..
+
+*+
+#define NEWHOWTO( FUNCTION, NAME,SIZE,REL) HOWTO(0,0,SIZE,0,REL,0,false,false,FUNCTION, NAME,false,0,0,false)
+*-
+
+Helper routine to turn a symbol into a relocation value.
+
+*+
+
+
+#define HOWTO_PREPARE(relocation, symbol)      \
+  {                                            \
+  if (symbol != (asymbol *)NULL) {             \
+    if (symbol->flags & BSF_FORT_COMM) {       \
+      relocation = 0;                          \
+    }                                          \
+    else {                                     \
+      relocation = symbol->value;              \
+    }                                          \
+  }                                            \
+  if (symbol->section != (asection *)NULL) {   \
+    relocation += symbol->section->output_section->vma +       \
+      symbol->section->output_offset;          \
+  }                                            \
+}                      
+*-
 */
 
 /*proto* reloc_chain
This page took 0.023772 seconds and 4 git commands to generate.