From 2504df11e1275f63f4c53377bf91eee996360cb5 Mon Sep 17 00:00:00 2001 From: obrien Date: Wed, 16 Jun 2004 05:45:41 +0000 Subject: Import of Binutils from the FSF 2.15 branch (just post-.0 release). These bits are taken from the FSF anoncvs repo on 23-May-2004 04:41:00 UTC. --- contrib/binutils/gas/write.h | 50 +++++++++++++++++++++++++------------------- 1 file changed, 28 insertions(+), 22 deletions(-) (limited to 'contrib/binutils/gas/write.h') diff --git a/contrib/binutils/gas/write.h b/contrib/binutils/gas/write.h index 451215d..0e0f59f 100644 --- a/contrib/binutils/gas/write.h +++ b/contrib/binutils/gas/write.h @@ -40,7 +40,9 @@ /* This is the name of a fake symbol which will never appear in the assembler output. S_IS_LOCAL detects it because of the \001. */ +#ifndef FAKE_LABEL_NAME #define FAKE_LABEL_NAME "L0\001" +#endif #include "bit_fix.h" @@ -105,6 +107,9 @@ struct fix /* Absolute number we add in. */ valueT fx_offset; + /* The value of dot when the fixup expression was parsed. */ + addressT fx_dot_value; + /* Next fixS in linked list, or NULL. */ struct fix *fx_next; @@ -158,6 +163,8 @@ struct fix typedef struct fix fixS; extern int finalize_syms; +extern symbolS *abs_section_sym; +extern addressT dot_value; #ifndef BFD_ASSEMBLER extern char *next_object_file_charP; @@ -176,36 +183,35 @@ extern long string_byte_count; extern int section_alignment[]; extern bit_fixS *bit_fix_new - PARAMS ((int size, int offset, long base_type, long base_adj, long min, - long max, long add)); -extern void append PARAMS ((char **charPP, char *fromP, unsigned long length)); -extern void record_alignment PARAMS ((segT seg, int align)); -extern int get_recorded_alignment PARAMS ((segT seg)); -extern void subsegs_finish PARAMS ((void)); -extern void write_object_file PARAMS ((void)); -extern long relax_frag PARAMS ((segT, fragS *, long)); -extern int relax_segment - PARAMS ((struct frag * seg_frag_root, segT seg_type)); - -extern void number_to_chars_littleendian PARAMS ((char *, valueT, int)); -extern void number_to_chars_bigendian PARAMS ((char *, valueT, int)); + (int size, int offset, long base_type, long base_adj, long min, + long max, long add); +extern void append (char **charPP, char *fromP, unsigned long length); +extern void record_alignment (segT seg, int align); +extern int get_recorded_alignment (segT seg); +extern void subsegs_finish (void); +extern void write_object_file (void); +extern long relax_frag (segT, fragS *, long); +extern int relax_segment (struct frag * seg_frag_root, segT seg_type); + +extern void number_to_chars_littleendian (char *, valueT, int); +extern void number_to_chars_bigendian (char *, valueT, int); #ifdef BFD_ASSEMBLER extern fixS *fix_new - PARAMS ((fragS * frag, int where, int size, symbolS * add_symbol, - offsetT offset, int pcrel, bfd_reloc_code_real_type r_type)); + (fragS * frag, int where, int size, symbolS * add_symbol, + offsetT offset, int pcrel, bfd_reloc_code_real_type r_type); extern fixS *fix_new_exp - PARAMS ((fragS * frag, int where, int size, expressionS *exp, int pcrel, - bfd_reloc_code_real_type r_type)); + (fragS * frag, int where, int size, expressionS *exp, int pcrel, + bfd_reloc_code_real_type r_type); #else extern fixS *fix_new - PARAMS ((fragS * frag, int where, int size, symbolS * add_symbol, - offsetT offset, int pcrel, int r_type)); + (fragS * frag, int where, int size, symbolS * add_symbol, + offsetT offset, int pcrel, int r_type); extern fixS *fix_new_exp - PARAMS ((fragS * frag, int where, int size, expressionS *exp, int pcrel, - int r_type)); + (fragS * frag, int where, int size, expressionS *exp, int pcrel, + int r_type); #endif -extern void write_print_statistics PARAMS ((FILE *)); +extern void write_print_statistics (FILE *); #endif /* __write_h__ */ -- cgit v1.1