aboutsummaryrefslogtreecommitdiff
path: root/gas/as.h
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1997-08-26 19:10:48 +0000
committerIan Lance Taylor <ian@airs.com>1997-08-26 19:10:48 +0000
commita089d2da979c9e8f2db869c30c104c45579fb00a (patch)
treeb265f9f6218e6f268ace932d260b351f529c99e1 /gas/as.h
parent977d53fc870e6e110afa8fd36b66da34f2ac9d03 (diff)
downloadgdb-a089d2da979c9e8f2db869c30c104c45579fb00a.zip
gdb-a089d2da979c9e8f2db869c30c104c45579fb00a.tar.gz
gdb-a089d2da979c9e8f2db869c30c104c45579fb00a.tar.bz2
* as.h: Don't define alloca if __GNUC__. Just declare it.
* macro.c: Copy alloca handling from as.h.
Diffstat (limited to 'gas/as.h')
-rw-r--r--gas/as.h56
1 files changed, 42 insertions, 14 deletions
diff --git a/gas/as.h b/gas/as.h
index f24b072..0196d06 100644
--- a/gas/as.h
+++ b/gas/as.h
@@ -52,8 +52,11 @@
/* AIX requires this to be the first thing in the file. */
#ifdef __GNUC__
-# undef alloca
-# define alloca __builtin_alloca
+#ifdef __STDC__
+extern void *alloca ();
+#else
+extern char *alloca ();
+#endif
#else
# if HAVE_ALLOCA_H
# include <alloca.h>
@@ -63,9 +66,9 @@
# else
# ifndef alloca /* predefined by HP cc +Olibcalls */
# if !defined (__STDC__) && !defined (__hpux)
-char *alloca ();
+extern char *alloca ();
# else
-void *alloca ();
+extern void *alloca ();
# endif /* __STDC__, __hpux */
# endif /* alloca */
# endif /* _AIX */
@@ -372,7 +375,11 @@ enum _relax_state
later. Similar to rs_org, but different.
fr_symbol: operand
1 variable char: fill character */
- rs_space
+ rs_space,
+
+ /* A DWARF leb128 value; only ELF uses this. The subtype is 0 for
+ unsigned, 1 for signed. */
+ rs_leb128
};
typedef enum _relax_state relax_stateT;
@@ -429,14 +436,22 @@ struct frag
relax_stateT fr_type;
relax_substateT fr_subtype;
- /* These are needed only on the NS32K machines. But since we don't
- include targ-cpu.h until after this structure has been defined,
- we can't really conditionalize it. This code should be
- rearranged a bit to make that possible.
-
- In the meantime, if we get stuck like this with any other target,
- create a union here. */
- char fr_pcrel_adjust, fr_bsr;
+ union {
+ /* These are needed only on the NS32K machines. But since we don't
+ include targ-cpu.h until after this structure has been defined,
+ we can't really conditionalize it. This code should be
+ rearranged a bit to make that possible. */
+ struct {
+ char pcrel_adjust, bsr;
+ } ns32k;
+#ifdef USING_CGEN
+ /* Don't include this unless using CGEN to keep frag size down. */
+ struct {
+ const struct cgen_insn *insn;
+ unsigned char opindex, opinfo;
+ } cgen;
+#endif
+ } fr_targ;
/* Where the frag was created, or where it became a variant frag. */
char *fr_file;
@@ -456,7 +471,7 @@ typedef struct frag fragS;
included in frchain_now. The fr_fix field is bogus; instead, use:
obstack_next_free(&frags)-frag_now->fr_literal. */
COMMON fragS *frag_now;
-extern int frag_now_fix ();
+extern int frag_now_fix PARAMS ((void));
/* For foreign-segment symbol fixups. */
COMMON fragS zero_address_frag;
@@ -512,6 +527,13 @@ COMMON int linkrelax;
/* TRUE if we should produce a listing. */
extern int listing;
+/* Type of debugging information we should generate. We currently
+ only support stabs and ECOFF. */
+
+enum debug_info_type { DEBUG_NONE, DEBUG_STABS, DEBUG_ECOFF };
+
+extern enum debug_info_type debug_type;
+
/* Maximum level of macro nesting. */
extern int max_macro_nest;
@@ -589,6 +611,8 @@ int gen_to_words PARAMS ((LITTLENUM_TYPE * words, int precision,
long exponent_bits));
int had_err PARAMS ((void));
int ignore_input PARAMS ((void));
+void cond_finish_check PARAMS ((int));
+void cond_exit_macro PARAMS ((int));
int seen_at_least_1_file PARAMS ((void));
void app_pop PARAMS ((char *arg));
void as_howmuch PARAMS ((FILE * stream));
@@ -609,6 +633,10 @@ void subseg_set PARAMS ((segT seg, subsegT subseg));
segT subseg_get PARAMS ((const char *, int));
#endif
+void start_dependencies PARAMS ((char *));
+void register_dependency PARAMS ((char *));
+void print_dependencies PARAMS ((void));
+
struct expressionS;
struct fix;
struct symbol;