#define TARGET_SYMBOL_FIELDS \
struct efdr *ecoff_file; \
struct localsym *ecoff_symbol; \
- char ecoff_undefined;
+ valueT ecoff_extern_size;
/* Modify the ECOFF symbol. */
#define obj_frob_symbol(symp, punt) ecoff_frob_symbol (symp)
#define OBJ_PROCESS_STAB(what, string, type, other, desc) \
ecoff_stab ((what), (string), (type), (other), (desc))
+#define OBJ_GENERATE_ASM_LINE_STAB(lineno) \
+ ecoff_generate_asm_line_stab ((lineno))
+
#define EMIT_SECTION_SYMBOLS 0
+#define obj_sec_sym_ok_for_reloc(SEC) 1
#define S_SET_SIZE(S,V) \
(elf_symbol((S)->bsym)->internal_elf_sym.st_size = (V))
+#define S_GET_ALIGN(S) (elf_symbol ((S)->bsym)->internal_elf_sym.st_value)
+#define S_SET_ALIGN(S,V) \
+ (elf_symbol ((S)->bsym)->internal_elf_sym.st_value = (V))
+
extern asection *gdb_section;
/* Copy over the function bit and size of a forwarded symbol. */
extern void obj_elf_previous PARAMS ((int));
extern void obj_elf_version PARAMS ((int));
+/* BFD wants to write the udata field, which is a no-no for the
+ globally defined sections. */
+#define obj_sec_sym_ok_for_reloc(SEC) ((SEC)->owner != 0)
+
/* Stabs go in a separate section. */
#define SEPARATE_STAB_SECTIONS
ELF_TARGET_SYMBOL_FIELDS \
struct efdr *ecoff_file; \
struct localsym *ecoff_symbol; \
- char ecoff_undefined;
+ valueT ecoff_extern_size;
/* We smuggle stabs in ECOFF rather than using a separate section.
The Irix linker can not handle a separate stabs section. */
#define OBJ_PROCESS_STAB(what, string, type, other, desc) \
ecoff_stab ((what), (string), (type), (other), (desc))
+#define OBJ_GENERATE_ASM_LINE_STAB(lineno) \
+ ecoff_generate_asm_line_stab ((lineno))
+
/* ECOFF requires that we call the ecoff_frob_symbol hook. */
#define obj_frob_symbol(symp, punt) ecoff_frob_symbol (symp)