diff options
author | Alexandre Oliva <aoliva@redhat.com> | 2002-01-24 02:54:47 +0000 |
---|---|---|
committer | Alexandre Oliva <aoliva@redhat.com> | 2002-01-24 02:54:47 +0000 |
commit | 538cd60fbb681d40ab2e2990bd00f0b2acea7b24 (patch) | |
tree | c5533f6ef1453ce27cbbd054e446d4484ee073b6 /gas/config/tc-sh.h | |
parent | ea87b71bed61d157e1f95597216b08909e109d04 (diff) | |
download | binutils-gdb-538cd60fbb681d40ab2e2990bd00f0b2acea7b24.tar.gz |
* config/tc-sh.c (sh_elf_suffix): Removed.
(sh_PIC_related_p, sh_check_fixup, sh_cons_fix_new,
sh_end_of_match, sh_parse_name): New functions.
(sh_elf_cons): Simplify.
(parse_exp): Reject misplaced PIC operands.
(md_undefined_symbol): Simplify.
(sh_fix_adjustable): Let @GOTOFF be adjusted.
(md_apply_fix3): Write @PLT and @GOTOFF addends in place.
(tc_gen_reloc): Move fixp subsy absolute value into addnumber.
Complain if subsy remains at the end.
* config/tc-sh.h (sh_parse_name, sh_cons_fix_new): Declare.
(md_parse_name, TC_CONS_FIX_NEW, O_PIC_reloc): Define.
Diffstat (limited to 'gas/config/tc-sh.h')
-rw-r--r-- | gas/config/tc-sh.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gas/config/tc-sh.h b/gas/config/tc-sh.h index dc7d1733134..09aacd7ee44 100644 --- a/gas/config/tc-sh.h +++ b/gas/config/tc-sh.h @@ -210,4 +210,18 @@ extern void sh_elf_final_processing PARAMS ((void)); && S_IS_DEFINED ((FIX)->fx_addsy) \ && ! S_IS_COMMON ((FIX)->fx_addsy)))) +#define md_parse_name(name, exprP, nextcharP) \ + sh_parse_name ((name), (exprP), (nextcharP)) +int sh_parse_name PARAMS ((char const *name, + expressionS *exprP, + char *nextchar)); + +#define TC_CONS_FIX_NEW(FRAG, OFF, LEN, EXP) \ + sh_cons_fix_new ((FRAG), (OFF), (LEN), (EXP)) +void sh_cons_fix_new PARAMS ((fragS *, int, int, expressionS *)); + +/* This is used to construct expressions out of @GOTOFF, @PLT and @GOT + symbols. The relocation type is stored in X_md. */ +#define O_PIC_reloc O_md1 + #endif /* OBJ_ELF */ |