Fri Jan 3 12:09:24 1997 Ian Lance Taylor <ian@cygnus.com>
+ * config/obj-coff.c (yank_symbols): If tc_frob_coff_symbol is
+ defined, call it.
+ * config/tc-m68k.c (tc_frob_symbol): Check whether text label is
+ aligned to odd boundary.
+ (tc_frob_coff_symbol): Define.
+
* doc/as.texinfo (Set): Change parenthesized @xref to @pxref.
* macro.c (macro_expand_body): In MRI mode, just copy a single &.
} /* no one points at the first .file symbol */
} /* if debug or tag or eos or file */
+#ifdef tc_frob_coff_symbol
+ tc_frob_coff_symbol (symbolP);
+#endif
+
/* We must put the external symbols apart. The loader
does not bomb if we do not. But the references in
the endndx field for a .bb symbol are not corrected
#ifdef BFD_ASSEMBLER
-#define tc_frob_symbol(sym,punt) \
- if (S_GET_SEGMENT (sym) == reg_section) punt = 1
+#define tc_frob_symbol(sym,punt) \
+do \
+ { \
+ if (S_GET_SEGMENT (sym) == reg_section) \
+ punt = 1; \
+ if (S_GET_SEGMENT (sym) == text_section \
+ && (S_GET_VALUE (sym) & 1) != 0) \
+ as_warn ("text label `%s' aligned to odd boundary", \
+ S_GET_NAME (sym)); \
+ } \
+while (0)
#define NO_RELOC BFD_RELOC_NONE
#define tc_fix_adjustable(X) tc_m68k_fix_adjustable(X)
#endif
-#else
+#else /* ! BFD_ASSEMBLER */
+
+#define tc_frob_coff_symbol(sym) \
+do \
+ { \
+ if (S_GET_SEGMENT (sym) == text_section \
+ && (S_GET_VALUE (sym) & 1) != 0) \
+ as_warn ("text label `%s' aligned to odd boundary", \
+ S_GET_NAME (sym)); \
+ } \
+while (0)
+
#define NO_RELOC 0
-#endif
+
+#endif /* ! BFD_ASSEMBLER */
#define DIFF_EXPR_OK