]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
2001-02-14 Philip Blundell <pb@futuretv.com>
authorPhil Blundell <philb@gnu.org>
Wed, 14 Feb 2001 09:57:29 +0000 (09:57 +0000)
committerPhil Blundell <philb@gnu.org>
Wed, 14 Feb 2001 09:57:29 +0000 (09:57 +0000)
From 2001-02-06  H.J. Lu  <hjl@gnu.org>
* config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Do fixup if
there is no relocation.

From 2001-02-06  H.J. Lu  <hjl@gnu.org>
* config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): New. Defined.
* config/tc-ia64.c (md_parse_option): Only accept the valid
ia64 options on "-axxx".

gas/config/tc-ia64.c
gas/config/tc-ia64.h

index 4c4f772c505d59991e60777eb5afcbc50db61b74..8f827393b3e46681e6b727ef25d7bfe948fee97d 100644 (file)
@@ -5983,12 +5983,13 @@ md_parse_option (c, arg)
       break;
 
     case 'a':
-      /* ??? Conflicts with gas' listing option.  */
       /* indirect=<tgt>        Assume unannotated indirect branches behavior
                        according to <tgt> --
                        exit:   branch out from the current context (default)
                        labels: all labels in context may be branch targets
        */
+      if (strncmp (arg, "indirect=", 9) != 0)
+        return 0;
       break;
 
     case 'x':
index 0094836487ef904dcdffe3826d0f00f6832602fc..f2b9fe43e8f1bca944b2035c0e27681591c64ec3 100644 (file)
@@ -246,3 +246,16 @@ typedef struct unwind_record
     unw_x_record x;
   } record;
 } unwind_record;
+
+/* This expression evaluates to false if the relocation is for a local 
+   object for which we still want to do the relocation at runtime.
+   True if we are willing to perform this relocation while building
+   the .o file.  This is only used for pcrel relocations.  */
+
+#define TC_RELOC_RTSYM_LOC_FIXUP(FIX)                          \
+  ((FIX)->fx_addsy == NULL                                     \
+   || (FIX)->fx_r_type == 0                                    \
+   || (! S_IS_EXTERNAL ((FIX)->fx_addsy)                       \
+       && ! S_IS_WEAK ((FIX)->fx_addsy)                                \
+       && S_IS_DEFINED ((FIX)->fx_addsy)                       \
+       && ! S_IS_COMMON ((FIX)->fx_addsy)))