diff options
Diffstat (limited to 'contrib/binutils/gas/as.h')
-rw-r--r-- | contrib/binutils/gas/as.h | 87 |
1 files changed, 68 insertions, 19 deletions
diff --git a/contrib/binutils/gas/as.h b/contrib/binutils/gas/as.h index 3f457e9..e56d6cd 100644 --- a/contrib/binutils/gas/as.h +++ b/contrib/binutils/gas/as.h @@ -1,5 +1,5 @@ /* as.h - global header file - Copyright (C) 1987, 90, 91, 92, 93, 94, 95, 96, 97, 1998 + Copyright (C) 1987, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -38,6 +38,7 @@ */ #include "config.h" +#include "bin-bugs.h" /* This is the code recommended in the autoconf documentation, almost verbatim. If it doesn't work for you, let me know, and notify @@ -111,7 +112,7 @@ extern void *alloca (); #ifdef DEBUG #undef NDEBUG #endif -#if !defined (__GNUC__) || __GNUC_MINOR__ <= 5 +#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 6) #define __PRETTY_FUNCTION__ ((char*)0) #endif #if 0 @@ -137,14 +138,14 @@ extern void *alloca (); /* Now GNU header files... */ -#include <ansidecl.h> +#include "ansidecl.h" #ifdef BFD_ASSEMBLER -#include <bfd.h> +#include "bfd.h" #endif -#include <libiberty.h> +#include "libiberty.h" /* Define the standard progress macros. */ -#include <progress.h> +#include "progress.h" /* This doesn't get taken care of anywhere. */ #ifndef __MWERKS__ /* Metrowerks C chokes on the "defined (inline)" */ @@ -167,6 +168,9 @@ extern void free (); #ifdef NEED_DECLARATION_ERRNO extern int errno; #endif +#ifdef NEED_DECLARATION_ENVIRON +extern char **environ; +#endif /* This is needed for VMS. */ #if ! defined (HAVE_UNLINK) && defined (HAVE_REMOVE) @@ -207,14 +211,20 @@ extern int errno; #define EXIT_FAILURE 1 #endif +#ifndef SEEK_SET +#define SEEK_SET 0 +#endif + #define obstack_chunk_alloc xmalloc #define obstack_chunk_free xfree #define xfree free +#include "asintl.h" + #define BAD_CASE(val) \ { \ - as_fatal("Case value %ld unexpected at line %d of file \"%s\"\n", \ + as_fatal(_("Case value %ld unexpected at line %d of file \"%s\"\n"), \ (long) val, __LINE__, __FILE__); \ } @@ -412,9 +422,6 @@ COMMON int flag_keep_locals; /* -L */ /* True if we are assembling in MRI mode. */ COMMON int flag_mri; -/* True if we are assembling in m68k MRI mode. */ -COMMON int flag_m68k_mri; - /* Should the data section be made read-only and appended to the text section? */ COMMON unsigned char flag_readonly_data_in_text; /* -R */ @@ -422,6 +429,9 @@ COMMON unsigned char flag_readonly_data_in_text; /* -R */ /* True if warnings should be inhibited. */ COMMON int flag_no_warnings; /* -W */ +/* True if warnings count as errors. */ +COMMON int flag_fatal_warnings; /* --fatal-warnings */ + /* True if we should attempt to generate output even if non-fatal errors are detected. */ COMMON unsigned char flag_always_generate_output; /* -Z */ @@ -452,9 +462,17 @@ COMMON int linkrelax; extern int listing; /* Type of debugging information we should generate. We currently - only support stabs and ECOFF. */ + support stabs, ECOFF, and DWARF2. */ -enum debug_info_type { DEBUG_NONE, DEBUG_STABS, DEBUG_ECOFF }; +enum debug_info_type + { + DEBUG_UNSPECIFIED, + DEBUG_NONE, + DEBUG_STABS, + DEBUG_ECOFF, + DEBUG_DWARF, + DEBUG_DWARF2 + }; extern enum debug_info_type debug_type; @@ -494,7 +512,7 @@ typedef struct _pseudo_type pseudo_typeS; #if (__GNUC__ >= 2) && !defined(VMS) /* for use with -Wformat */ -#if __GNUC_MINOR__ < 6 +#if __GNUC__ == 2 && __GNUC_MINOR__ < 6 /* Support for double underscores in attribute names was added in gcc 2.6, so avoid them if we are using an earlier version. */ #define __printf__ printf @@ -525,14 +543,14 @@ typedef struct _pseudo_type pseudo_typeS; #endif /* ! USE_STDARG */ PRINTF_LIKE (as_bad); -PRINTF_LIKE (as_fatal); +PRINTF_LIKE (as_fatal) ATTRIBUTE_NORETURN; PRINTF_LIKE (as_tsktsk); PRINTF_LIKE (as_warn); PRINTF_WHERE_LIKE (as_bad_where); PRINTF_WHERE_LIKE (as_warn_where); void as_assert PARAMS ((const char *, int, const char *)); -void as_abort PARAMS ((const char *, int, const char *)); +void as_abort PARAMS ((const char *, int, const char *)) ATTRIBUTE_NORETURN; void fprint_value PARAMS ((FILE *file, addressT value)); void sprint_value PARAMS ((char *buf, addressT value)); @@ -544,9 +562,11 @@ void print_version_id PARAMS ((void)); char *app_push PARAMS ((void)); char *atof_ieee PARAMS ((char *str, int what_kind, LITTLENUM_TYPE * words)); char *input_scrub_include_file PARAMS ((char *filename, char *position)); +extern void input_scrub_insert_line PARAMS((const char *line)); +extern void input_scrub_insert_file PARAMS((char *path)); char *input_scrub_new_file PARAMS ((char *filename)); char *input_scrub_next_buffer PARAMS ((char **bufp)); -int do_scrub_chars PARAMS ((int (*get) (char **), char *to, int tolen)); +int do_scrub_chars PARAMS ((int (*get) (char *, int), char *to, int tolen)); int gen_to_words PARAMS ((LITTLENUM_TYPE * words, int precision, long exponent_bits)); int had_err PARAMS ((void)); @@ -572,6 +592,7 @@ void subseg_set PARAMS ((segT seg, subsegT subseg)); #ifdef BFD_ASSEMBLER segT subseg_get PARAMS ((const char *, int)); #endif +int subseg_text_p PARAMS ((segT)); void start_dependencies PARAMS ((char *)); void register_dependency PARAMS ((char *)); @@ -579,13 +600,13 @@ void print_dependencies PARAMS ((void)); struct expressionS; struct fix; -struct symbol; +typedef struct symbol symbolS; struct relax_type; typedef struct frag fragS; #ifdef BFD_ASSEMBLER /* literal.c */ -valueT add_to_literal_pool PARAMS ((struct symbol *, valueT, segT, int)); +valueT add_to_literal_pool PARAMS ((symbolS *, valueT, segT, int)); #endif int check_eh_frame PARAMS ((struct expressionS *, unsigned int *)); @@ -598,7 +619,6 @@ void eh_frame_convert_frag PARAMS ((fragS *)); /* this one starts the chain of target dependant headers */ #include "targ-env.h" -#include "struc-symbol.h" #include "write.h" #include "frags.h" #include "hash.h" @@ -613,6 +633,17 @@ void eh_frame_convert_frag PARAMS ((fragS *)); #endif #include "listing.h" +#ifdef TC_M68K +/* True if we are assembling in m68k MRI mode. */ +COMMON int flag_m68k_mri; +#else +#define flag_m68k_mri 0 +#endif + +#ifndef NUMBERS_WITH_SUFFIX +#define NUMBERS_WITH_SUFFIX 0 +#endif + #ifndef LOCAL_LABELS_DOLLAR #define LOCAL_LABELS_DOLLAR 0 #endif @@ -621,12 +652,30 @@ void eh_frame_convert_frag PARAMS ((fragS *)); #define LOCAL_LABELS_FB 0 #endif +#ifndef LABELS_WITHOUT_COLONS +#define LABELS_WITHOUT_COLONS 0 +#endif + +#ifndef NO_PSEUDO_DOT +#define NO_PSEUDO_DOT 0 +#endif + #ifndef TEXT_SECTION_NAME #define TEXT_SECTION_NAME ".text" #define DATA_SECTION_NAME ".data" #define BSS_SECTION_NAME ".bss" #endif +#ifndef OCTETS_PER_BYTE_POWER +#define OCTETS_PER_BYTE_POWER 0 +#endif +#ifndef OCTETS_PER_BYTE +#define OCTETS_PER_BYTE (1<<OCTETS_PER_BYTE_POWER) +#endif +#if OCTETS_PER_BYTE != (1<<OCTETS_PER_BYTE_POWER) + #error "Octets per byte conflicts with its power-of-two definition!" +#endif + #endif /* GAS */ /* end of as.h */ |