* config/tc-ppc.c (md_apply_fix3): Allow BRTAKEN, BRNTAKEN relocs.
[deliverable/binutils-gdb.git] / gas / as.h
index f58b53b6340bb8296c3fa261b386527588949901..21219644d5aa02f2a6cd4ef9fa5cf6b0d411f7a2 100644 (file)
--- a/gas/as.h
+++ b/gas/as.h
@@ -1,5 +1,6 @@
 /* as.h - global header file
-   Copyright (C) 1987, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000
+   Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
+   1999, 2000, 2001, 2002, 2003
    Free Software Foundation, Inc.
 
    This file is part of GAS, the GNU Assembler.
 /* This is the code recommended in the autoconf documentation, almost
    verbatim.  If it doesn't work for you, let me know, and notify
    djm@gnu.ai.mit.edu as well.  */
-/* Added #undef for DJ Delorie.  The right fix is to ensure that as.h
-   is included first, before even any system header files, in all files
-   that use it.  KR 1994.11.03 */
 /* Added void* version for STDC case.  This is to be compatible with
    the declaration in bison.simple, used for m68k operand parsing.
    --KR 1995.08.08 */
 /* Force void* decl for hpux.  This is what Bison uses.  --KR 1995.08.16 */
 
-/* AIX requires this to be the first thing in the file.  */
-#ifdef __GNUC__
-# ifndef alloca
-#  ifdef __STDC__
-extern void *alloca ();
-#  else
-extern char *alloca ();
-#  endif
-# endif
-#else
+#ifndef __GNUC__
 # if HAVE_ALLOCA_H
 #  include <alloca.h>
 # else
 #  ifdef _AIX
+/* Indented so that pre-ansi C compilers will ignore it, rather than
+   choke on it.  Some versions of AIX require this to be the first
+   thing in the file.  */
  #pragma alloca
 #  else
 #   ifndef alloca /* predefined by HP cc +Olibcalls */
@@ -75,13 +67,12 @@ extern void *alloca ();
 #   endif /* alloca */
 #  endif /* _AIX */
 # endif /* HAVE_ALLOCA_H */
-#endif
+#endif /* __GNUC__ */
 
 /* Now, tend to the rest of the configuration.  */
 
 /* System include files first...  */
 #include <stdio.h>
-#include <ctype.h>
 #ifdef HAVE_STRING_H
 #include <string.h>
 #else
@@ -100,7 +91,7 @@ extern void *alloca ();
 #include <sys/types.h>
 #endif
 
-#include <getopt.h>
+#include "getopt.h"
 /* The first getopt value for machine-independent long options.
    150 isn't special; it's just an arbitrary non-ASCII char value.  */
 #define OPTION_STD_BASE 150
@@ -177,15 +168,15 @@ extern char **environ;
 
 /* Hack to make "gcc -Wall" not complain about obstack macros.  */
 #if !defined (memcpy) && !defined (bcopy)
-#define bcopy(src,dest,size)   memcpy(dest,src,size)
+#define bcopy(src,dest,size)   memcpy (dest, src, size)
 #endif
 
 /* Make Saber happier on obstack.h.  */
 #ifdef SABER
 #undef  __PTR_TO_INT
-#define __PTR_TO_INT(P) ((int)(P))
+#define __PTR_TO_INT(P) ((int) (P))
 #undef  __INT_TO_PTR
-#define __INT_TO_PTR(P) ((char *)(P))
+#define __INT_TO_PTR(P) ((char *) (P))
 #endif
 
 #ifndef __LINE__
@@ -197,7 +188,7 @@ extern char **environ;
 #endif /* __FILE__ */
 
 #ifndef FOPEN_WB
-#ifdef GO32
+#if defined GO32 || defined __MINGW32__
 #include "fopen-bin.h"
 #else
 #include "fopen-same.h"
@@ -364,6 +355,10 @@ enum _relax_state {
      bytes to skip when aligning, or 0 if there is no maximum.  */
   rs_align_code,
 
+  /* Test for alignment.  Like rs_align, but used by several targets
+     to warn if data is not properly aligned.  */
+  rs_align_test,
+
   /* Org: Fr_offset, fr_symbol: address. 1 variable char: fill
      character.  */
   rs_org,
@@ -387,7 +382,10 @@ enum _relax_state {
   rs_leb128,
 
   /* Exception frame information which we may be able to optimize.  */
-  rs_cfa
+  rs_cfa,
+
+  /* Cross-fragment dwarf2 line number optimization.  */
+  rs_dwarf2dbg
 };
 
 typedef enum _relax_state relax_stateT;
@@ -438,6 +436,12 @@ COMMON int flag_strip_local_absolute;
 /* True if we should generate a traditional format object file.  */
 COMMON int flag_traditional_format;
 
+/* TRUE if .note.GNU-stack section with SEC_CODE should be created */
+COMMON int flag_execstack;
+
+/* TRUE if .note.GNU-stack section with SEC_CODE should be created */
+COMMON int flag_noexecstack;
+
 /* name of emitted object file */
 COMMON char *out_file_name;
 
@@ -454,8 +458,13 @@ COMMON int linkrelax;
 /* TRUE if we should produce a listing.  */
 extern int listing;
 
-/* Type of debugging information we should generate.  We currently
-   support stabs, ECOFF, and DWARF2.  */
+/* Type of debugging information we should generate.  We currently support
+   stabs, ECOFF, and DWARF2.
+
+   NOTE!  This means debug information about the assembly source code itself
+   and _not_ about possible debug information from a high-level language.
+   This is especially relevant to DWARF2, since the compiler may emit line
+   number directives that the assembler resolves.  */
 
 enum debug_info_type {
   DEBUG_UNSPECIFIED,
@@ -471,6 +480,9 @@ extern enum debug_info_type debug_type;
 /* Maximum level of macro nesting.  */
 extern int max_macro_nest;
 
+/* Verbosity level.  */
+extern int verbose;
+
 /* Obstack chunk size.  Keep large for efficient space use, make small to
    increase malloc calls for monitoring memory allocation.  */
 extern int chunksize;
@@ -605,11 +617,23 @@ int eh_frame_estimate_size_before_relax PARAMS ((fragS *));
 int eh_frame_relax_frag PARAMS ((fragS *));
 void eh_frame_convert_frag PARAMS ((fragS *));
 
+int generic_force_reloc PARAMS ((struct fix *));
+
 #include "expr.h"              /* Before targ-*.h */
 
 /* this one starts the chain of target dependant headers */
 #include "targ-env.h"
 
+#ifdef OBJ_MAYBE_ELF
+#define IS_ELF (OUTPUT_FLAVOR == bfd_target_elf_flavour)
+#else
+#ifdef OBJ_ELF
+#define IS_ELF 1
+#else
+#define IS_ELF 0
+#endif
+#endif
+
 #include "write.h"
 #include "frags.h"
 #include "hash.h"
This page took 0.02752 seconds and 4 git commands to generate.