aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-xtensa.h
diff options
context:
space:
mode:
authorBob Wilson <bob.wilson@acm.org>2005-03-17 21:49:47 +0000
committerBob Wilson <bob.wilson@acm.org>2005-03-17 21:49:47 +0000
commit30f725a1cfc586c6d5aed63218e9a3b378848bc5 (patch)
treea3ebb1ade5cf44c2fa20bcf6a4fa12576ad686e0 /gas/config/tc-xtensa.h
parent06648491d7c95ff1100c347d526f6ae76a14c9e5 (diff)
downloadgdb-30f725a1cfc586c6d5aed63218e9a3b378848bc5.zip
gdb-30f725a1cfc586c6d5aed63218e9a3b378848bc5.tar.gz
gdb-30f725a1cfc586c6d5aed63218e9a3b378848bc5.tar.bz2
* config/tc-xtensa.c (xg_apply_tentative_value): Rename to
xg_apply_fix_value and return a value to indicate success. (md_pcrel_from): Skip check of fx_done. Return 0 if not PC-relative. (xtensa_force_relocation): Remove checks for VTABLE relocs. (xtensa_validate_fix_sub): New. (xtensa_fix_adjustable): Remove check for external or weak symbols. (tc_gen_reloc): Move code to handle difference of symbols and code to apply tentative fix values to ... (md_apply_fix3): ...here. Enable standard overflow checks for simple 8, 16, and 32 bit relocations. Apply fixes for slot-specific relocations when linkrelax flag is not set. * config/tc-xtensa.h (xtensa_validate_fix_sub): Add prototype. (TC_FORCE_RELOCATION_SUB_SAME, TC_VALIDATE_FIX_SUB): Define.
Diffstat (limited to 'gas/config/tc-xtensa.h')
-rw-r--r--gas/config/tc-xtensa.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gas/config/tc-xtensa.h b/gas/config/tc-xtensa.h
index 4743617..e38fa6c 100644
--- a/gas/config/tc-xtensa.h
+++ b/gas/config/tc-xtensa.h
@@ -291,6 +291,7 @@ extern const char *xtensa_target_format (void);
extern void xtensa_init_fix_data (struct fix *);
extern void xtensa_frag_init (fragS *);
extern int xtensa_force_relocation (struct fix *);
+extern int xtensa_validate_fix_sub (struct fix *);
extern void xtensa_frob_label (struct symbol *);
extern void xtensa_end (void);
extern void xtensa_post_relax_hook (void);
@@ -314,6 +315,9 @@ extern char *xtensa_section_rename (char *);
#define TC_FRAG_TYPE struct xtensa_frag_type
#define TC_FRAG_INIT(frag) xtensa_frag_init (frag)
#define TC_FORCE_RELOCATION(fix) xtensa_force_relocation (fix)
+#define TC_FORCE_RELOCATION_SUB_SAME(fix, seg) \
+ (! SEG_NORMAL (seg) || xtensa_force_relocation (fix))
+#define TC_VALIDATE_FIX_SUB(fix) xtensa_validate_fix_sub (fix)
#define NO_PSEUDO_DOT xtensa_check_inside_bundle ()
#define tc_canonicalize_symbol_name(s) xtensa_section_rename (s)
#define tc_canonicalize_section_name(s) xtensa_section_rename (s)