diff options
author | Ken Raeburn <raeburn@cygnus> | 1992-11-23 20:39:57 +0000 |
---|---|---|
committer | Ken Raeburn <raeburn@cygnus> | 1992-11-23 20:39:57 +0000 |
commit | 6efd877de5ab683fc5d7c216049f9f888bf18828 (patch) | |
tree | 14fbfbcba9ec0238dad02cac1981999b99c297dd /gas/as.h | |
parent | 5707ea9fad0ff4b51cc2c913af218c0a0b8278e9 (diff) | |
download | gdb-6efd877de5ab683fc5d7c216049f9f888bf18828.zip gdb-6efd877de5ab683fc5d7c216049f9f888bf18828.tar.gz gdb-6efd877de5ab683fc5d7c216049f9f888bf18828.tar.bz2 |
Ran "indent", for GNU coding style; some code & comments still need fixup.
Removed some unneeded files.
configure.in: Don't look for te-386bsd.h, which doesn't exist...
Diffstat (limited to 'gas/as.h')
-rw-r--r-- | gas/as.h | 312 |
1 files changed, 159 insertions, 153 deletions
@@ -1,18 +1,18 @@ /* as.h - global header file Copyright (C) 1987, 1990, 1991, 1992 Free Software Foundation, Inc. - + This file is part of GAS, the GNU Assembler. - + GAS is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. - + GAS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License along with GAS; see the file COPYING. If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ @@ -22,10 +22,10 @@ #include "host.h" #include "flonum.h" -#if __STDC__ != 1 -#define volatile /**/ +#ifndef __STDC__ +#define volatile /**/ #ifndef const -#define const /**/ +#define const /**/ #endif /* const */ #endif /* __STDC__ */ @@ -76,8 +76,8 @@ as_fatal("Case value %d unexpected at line %d of file \"%s\"\n", \ value, __LINE__, __FILE__); \ } - + /* These are assembler-wide concepts */ @@ -89,7 +89,7 @@ #endif #endif /* COMMON now defined */ -#define DEBUG /* temporary */ +#define DEBUG /* temporary */ #ifdef BROKEN_ASSERT /* turn off all assertion checks */ @@ -112,8 +112,8 @@ * Supplies sanitised buffers to read.c. * Also understands printing line-number part of error messages. */ - + /* subsegs.c Sub-segments. Also, segment(=expression type)s.*/ /* @@ -160,32 +160,33 @@ #define SEG_LIST SEG_TEXT,SEG_DATA,SEG_BSS #endif -typedef enum _segT { - SEG_ABSOLUTE = 0, - SEG_LIST, - SEG_UNKNOWN, - SEG_ABSENT, /* Mythical Segment (absent): NO expression seen. */ - SEG_PASS1, /* Mythical Segment: Need another pass. */ - SEG_GOOF, /* Only happens if AS has a logic error. */ - /* Invented so we don't crash printing */ - /* error message involving weird segment. */ - SEG_BIG, /* Bigger than 32 bits constant. */ - SEG_DIFFERENCE, /* Mythical Segment: absolute difference. */ - SEG_DEBUG, /* Debug segment */ - SEG_NTV, /* Transfert vector preload segment */ - SEG_PTV, /* Transfert vector postload segment */ - SEG_REGISTER, /* Mythical: a register-valued expression */ -} segT; +typedef enum _segT + { + SEG_ABSOLUTE = 0, + SEG_LIST, + SEG_UNKNOWN, + SEG_ABSENT, /* Mythical Segment (absent): NO expression seen. */ + SEG_PASS1, /* Mythical Segment: Need another pass. */ + SEG_GOOF, /* Only happens if AS has a logic error. */ + /* Invented so we don't crash printing */ + /* error message involving weird segment. */ + SEG_BIG, /* Bigger than 32 bits constant. */ + SEG_DIFFERENCE, /* Mythical Segment: absolute difference. */ + SEG_DEBUG, /* Debug segment */ + SEG_NTV, /* Transfert vector preload segment */ + SEG_PTV, /* Transfert vector postload segment */ + SEG_REGISTER, /* Mythical: a register-valued expression */ + } segT; #define SEG_MAXIMUM_ORDINAL (SEG_REGISTER) typedef int subsegT; -COMMON subsegT now_subseg; +COMMON subsegT now_subseg; /* What subseg we are accreting now? */ -COMMON segT now_seg; +COMMON segT now_seg; /* Segment our instructions emit to. */ /* Only OK values are SEG_TEXT or SEG_DATA. */ @@ -196,33 +197,34 @@ extern int section_alignment[]; /* relax() */ -typedef enum _relax_state { - rs_fill = 1, /* Variable chars to be repeated fr_offset times. +typedef enum _relax_state + { + rs_fill = 1, /* Variable chars to be repeated fr_offset times. Fr_symbol unused. Used with fr_offset == 0 for a constant length frag. */ - - rs_align, /* Align: Fr_offset: power of 2. 1 variable char: fill + + rs_align, /* Align: Fr_offset: power of 2. 1 variable char: fill character. */ - - rs_org, /* Org: Fr_offset, fr_symbol: address. 1 variable char: fill + + rs_org, /* Org: Fr_offset, fr_symbol: address. 1 variable char: fill character. */ - - rs_machine_dependent, - + + rs_machine_dependent, + #ifndef WORKING_DOT_WORD - rs_broken_word, /* JF: gunpoint */ + rs_broken_word, /* JF: gunpoint */ #endif -} relax_stateT; + } relax_stateT; /* typedef unsigned char relax_substateT; */ /* JF this is more likely to leave the end of a struct frag on an align boundry. Be very careful with this. */ typedef unsigned long relax_substateT; -typedef unsigned long relax_addressT;/* Enough bits for address. */ +typedef unsigned long relax_addressT; /* Enough bits for address. */ /* Still an integer type. */ - + /* frags.c */ /* @@ -236,159 +238,163 @@ typedef unsigned long relax_addressT;/* Enough bits for address. */ * of the 1st char of a frag is generally not known until after relax(). * Many things at assembly time describe an address by {object-file-address * of a particular frag}+offset. - + BUG: it may be smarter to have a single pointer off to various different - notes for different frag kinds. See how code pans + notes for different frag kinds. See how code pans */ struct frag /* a code fragment */ { - unsigned long fr_address; /* Object file address. */ - struct frag *fr_next; /* Chain forward; ascending address order. */ - /* Rooted in frch_root. */ - - long fr_fix; /* (Fixed) number of chars we know we have. */ - /* May be 0. */ - long fr_var; /* (Variable) number of chars after above. */ - /* May be 0. */ - struct symbol *fr_symbol; /* For variable-length tail. */ - long fr_offset; /* For variable-length tail. */ - char *fr_opcode; /*->opcode low addr byte,for relax()ation*/ - relax_stateT fr_type; /* What state is my tail in? */ - relax_substateT fr_subtype; - /* These are needed only on the NS32K machines */ - char fr_pcrel_adjust; - char fr_bsr; + unsigned long fr_address; /* Object file address. */ + struct frag *fr_next; /* Chain forward; ascending address order. */ + /* Rooted in frch_root. */ + + long fr_fix; /* (Fixed) number of chars we know we have. */ + /* May be 0. */ + long fr_var; /* (Variable) number of chars after above. */ + /* May be 0. */ + struct symbol *fr_symbol; /* For variable-length tail. */ + long fr_offset; /* For variable-length tail. */ + char *fr_opcode; /*->opcode low addr byte,for relax()ation*/ + relax_stateT fr_type; /* What state is my tail in? */ + relax_substateT fr_subtype; + /* These are needed only on the NS32K machines */ + char fr_pcrel_adjust; + char fr_bsr; #ifndef NO_LISTING - struct list_info_struct *line; + struct list_info_struct *line; #endif - char fr_literal [1]; /* Chars begin here. */ - /* One day we will compile fr_literal[0]. */ + char fr_literal[1]; /* Chars begin here. */ + /* One day we will compile fr_literal[0]. */ }; + #define SIZEOF_STRUCT_FRAG \ ((int)zero_address_frag.fr_literal-(int)&zero_address_frag) /* We want to say fr_literal[0] above. */ typedef struct frag fragS; -COMMON fragS *frag_now; /* -> current frag we are building. */ +COMMON fragS *frag_now; /* -> current frag we are building. */ /* This frag is incomplete. */ /* It is, however, included in frchain_now. */ /* Frag_now->fr_fix is bogus. Use: */ /* Virtual frag_now->fr_fix==obstack_next_free(&frags)-frag_now->fr_literal.*/ COMMON fragS zero_address_frag; /* For foreign-segment symbol fixups. */ -COMMON fragS bss_address_frag; /* For local common (N_BSS segment) fixups. */ +COMMON fragS bss_address_frag; /* For local common (N_BSS segment) fixups. */ /* main program "as.c" (command arguments etc) */ COMMON char flagseen[128]; /* ['x'] TRUE if "-x" seen. */ -COMMON char * out_file_name; /* name of emitted object file */ +COMMON char *out_file_name; /* name of emitted object file */ COMMON int need_pass_2; /* TRUE if we need a second pass. */ COMMON int linkrelax; /* TRUE if we should do no relaxing, and leave lots of padding. */ -typedef struct { - char * poc_name; /* assembler mnemonic, lower case, no '.' */ - void (*poc_handler)(); /* Do the work */ - int poc_val; /* Value to pass to handler */ -} pseudo_typeS; +typedef struct + { + char *poc_name; /* assembler mnemonic, lower case, no '.' */ + void (*poc_handler) (); /* Do the work */ + int poc_val; /* Value to pass to handler */ + } + +pseudo_typeS; -#if (__STDC__ == 1) & !defined(NO_STDARG) +#ifdef __STDC__ -int had_errors(void); -int had_warnings(void); -void as_bad(const char *Format, ...); -void as_fatal(const char *Format, ...); -void as_tsktsk(const char *Format, ...); -void as_warn(const char *Format, ...); +int had_errors (void); +int had_warnings (void); +void as_bad (const char *Format,...); +void as_fatal (const char *Format,...); +void as_tsktsk (const char *Format,...); +void as_warn (const char *Format,...); #else -int had_errors(); -int had_warnings(); -void as_bad(); -void as_fatal(); -void as_tsktsk(); -void as_warn(); +int had_errors (); +int had_warnings (); +void as_bad (); +void as_fatal (); +void as_tsktsk (); +void as_warn (); #endif /* __STDC__ & !NO_STDARG */ -#if __STDC__ == 1 - -char *app_push(void); -char *atof_ieee(char *str, int what_kind, LITTLENUM_TYPE *words); -char *input_scrub_include_file(char *filename, char *position); -char *input_scrub_new_file(char *filename); -char *input_scrub_next_buffer(char **bufp); -char *strstr(const char *s, const char *wanted); -char *xmalloc(int size); -char *xrealloc(char *ptr, long n); -int do_scrub_next_char(int (*get)(), void (*unget)()); -int gen_to_words(LITTLENUM_TYPE *words, int precision, long exponent_bits); -int had_err(void); -int had_errors(void); -int had_warnings(void); -int ignore_input(void); -int scrub_from_file(void); -int scrub_from_file(void); -int scrub_from_string(void); -int seen_at_least_1_file(void); -void app_pop(char *arg); -void as_howmuch(FILE *stream); -void as_perror(char *gripe, char *filename); -void as_where(void); -void bump_line_counters(void); -void do_scrub_begin(void); -void input_scrub_begin(void); -void input_scrub_close(void); -void input_scrub_end(void); -void int_to_gen(long x); -void new_logical_line(char *fname, int line_number); -void scrub_to_file(int ch); -void scrub_to_string(int ch); -void subseg_change(segT seg, int subseg); -void subseg_new(segT seg, subsegT subseg); -void subsegs_begin(void); +#ifdef __STDC__ + +char *app_push (void); +char *atof_ieee (char *str, int what_kind, LITTLENUM_TYPE * words); +char *input_scrub_include_file (char *filename, char *position); +char *input_scrub_new_file (char *filename); +char *input_scrub_next_buffer (char **bufp); +char *strstr (const char *s, const char *wanted); +char *xmalloc (int size); +char *xrealloc (char *ptr, long n); +int do_scrub_next_char (int (*get) (), void (*unget) ()); +int gen_to_words (LITTLENUM_TYPE * words, int precision, long exponent_bits); +int had_err (void); +int had_errors (void); +int had_warnings (void); +int ignore_input (void); +int scrub_from_file (void); +int scrub_from_file (void); +int scrub_from_string (void); +int seen_at_least_1_file (void); +void app_pop (char *arg); +void as_howmuch (FILE * stream); +void as_perror (char *gripe, char *filename); +void as_where (void); +void bump_line_counters (void); +void do_scrub_begin (void); +void input_scrub_begin (void); +void input_scrub_close (void); +void input_scrub_end (void); +void int_to_gen (long x); +void new_logical_line (char *fname, int line_number); +void scrub_to_file (int ch); +void scrub_to_string (int ch); +void subseg_change (segT seg, int subseg); +void subseg_new (segT seg, subsegT subseg); +void subsegs_begin (void); #else /* not __STDC__ */ -char *app_push(); -char *atof_ieee(); -char *input_scrub_include_file(); -char *input_scrub_new_file(); -char *input_scrub_next_buffer(); -char *strstr(); -char *xmalloc(); -char *xrealloc(); -int do_scrub_next_char(); -int gen_to_words(); -int had_err(); -int had_errors(); -int had_warnings(); -int ignore_input(); -int scrub_from_file(); -int scrub_from_file(); -int scrub_from_string(); -int seen_at_least_1_file(); -void app_pop(); -void as_howmuch(); -void as_perror(); -void as_where(); -void bump_line_counters(); -void do_scrub_begin(); -void input_scrub_begin(); -void input_scrub_close(); -void input_scrub_end(); -void int_to_gen(); -void new_logical_line(); -void scrub_to_file(); -void scrub_to_string(); -void subseg_change(); -void subseg_new(); -void subsegs_begin(); +char *app_push (); +char *atof_ieee (); +char *input_scrub_include_file (); +char *input_scrub_new_file (); +char *input_scrub_next_buffer (); +char *strstr (); +char *xmalloc (); +char *xrealloc (); +int do_scrub_next_char (); +int gen_to_words (); +int had_err (); +int had_errors (); +int had_warnings (); +int ignore_input (); +int scrub_from_file (); +int scrub_from_file (); +int scrub_from_string (); +int seen_at_least_1_file (); +void app_pop (); +void as_howmuch (); +void as_perror (); +void as_where (); +void bump_line_counters (); +void do_scrub_begin (); +void input_scrub_begin (); +void input_scrub_close (); +void input_scrub_end (); +void int_to_gen (); +void new_logical_line (); +void scrub_to_file (); +void scrub_to_string (); +void subseg_change (); +void subseg_new (); +void subsegs_begin (); #endif /* not __STDC__ */ |