diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2001-02-06 19:09:01 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2001-02-06 19:09:01 +0000 |
commit | 85b40035ddc3e941faf89252e5a931a802e0e22b (patch) | |
tree | c6cac299dd8792e0a8829a959e5bd6e7fd81248d /gas | |
parent | 27def10f96de55e218df1ae91c2910db11af7564 (diff) | |
download | gdb-85b40035ddc3e941faf89252e5a931a802e0e22b.zip gdb-85b40035ddc3e941faf89252e5a931a802e0e22b.tar.gz gdb-85b40035ddc3e941faf89252e5a931a802e0e22b.tar.bz2 |
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".
Diffstat (limited to 'gas')
-rw-r--r-- | gas/config/tc-ia64.c | 3 | ||||
-rw-r--r-- | gas/config/tc-ia64.h | 12 |
2 files changed, 14 insertions, 1 deletions
diff --git a/gas/config/tc-ia64.c b/gas/config/tc-ia64.c index b905095..0b31a55 100644 --- a/gas/config/tc-ia64.c +++ b/gas/config/tc-ia64.c @@ -5834,12 +5834,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': diff --git a/gas/config/tc-ia64.h b/gas/config/tc-ia64.h index fd802de..a3353fc 100644 --- a/gas/config/tc-ia64.h +++ b/gas/config/tc-ia64.h @@ -246,3 +246,15 @@ 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 \ + || (! S_IS_EXTERNAL ((FIX)->fx_addsy) \ + && ! S_IS_WEAK ((FIX)->fx_addsy) \ + && S_IS_DEFINED ((FIX)->fx_addsy) \ + && ! S_IS_COMMON ((FIX)->fx_addsy))) |