Mon Nov 25 17:26:22 1991 Steve Chamberlain (sac at cygnus.com)
* as.c: (perform_an_assembly_pass): moved declaration of i to avoid a syntax error. Now always create the three default sections when in MANY_SEGMENTS mode. * as.h: New improved way of specifying MANY_SEGMENTS * configure.in: hds object format is now coff-bfd * subsegs.h: add line numbers and section stuff to the segment_info structure. (But go back later and fix.. this is COFF specific)
This commit is contained in:
parent
605fe2b1b0
commit
ace68c4ed9
@ -1,3 +1,20 @@
|
||||
Mon Nov 25 17:26:22 1991 Steve Chamberlain (sac at cygnus.com)
|
||||
|
||||
* as.c: (perform_an_assembly_pass): moved declaration of i to
|
||||
avoid a syntax error. Now always create the three default
|
||||
sections when in MANY_SEGMENTS mode.
|
||||
* as.h: New improved way of specifying MANY_SEGMENTS
|
||||
* configure.in: hds object format is now coff-bfd
|
||||
* subsegs.h: add line numbers and section stuff to the
|
||||
segment_info structure. (But go back later and fix.. this is
|
||||
COFF specific)
|
||||
|
||||
|
||||
Thu Oct 24 17:25:59 1991 Steve Chamberlain (steve at rtl.cygnus.com)
|
||||
|
||||
* config/obj-coff.c (obj_coff_dim): Allows newline to end a
|
||||
.dim statement.
|
||||
|
||||
Mon Oct 21 09:25:33 1991 Steve Chamberlain (steve at rtl.cygnus.com)
|
||||
|
||||
* configure.in: added ebmon entry.
|
||||
|
16
gas/as.h
16
gas/as.h
@ -93,7 +93,9 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
|
||||
|
||||
#ifdef DEBUG
|
||||
#undef NDEBUG
|
||||
#ifndef know
|
||||
#define know(p) assert(p) /* Verify our assumptions! */
|
||||
#endif /* not yet defined */
|
||||
#else
|
||||
#define know(p) /* know() checks are no-op.ed */
|
||||
#endif
|
||||
@ -140,22 +142,20 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
|
||||
* X_add_symbol != X_sub_symbol (then we just cancel them, => SEG_ABSOLUTE).
|
||||
*/
|
||||
|
||||
|
||||
#ifdef MANY_SEGMENTS
|
||||
#define N_SEGMENTS 10
|
||||
#define SEG_NORMAL(x) ((x) >= SEG_E0 && (x) <= SEG_E9)
|
||||
#define SEG_LIST SEG_E0,SEG_E1,SEG_E2,SEG_E3,SEG_E4,SEG_E5,SEG_E6,SEG_E7,SEG_E8,SEG_E9
|
||||
#else
|
||||
#define N_SEGMENTS 3
|
||||
#define SEG_NORMAL(x) ((x) == SEG_TEXT || (x) == SEG_DATA || (x) == SEG_BSS)
|
||||
#define SEG_LIST SEG_TEXT,SEG_DATA,SEG_BSS
|
||||
#endif
|
||||
|
||||
typedef enum _segT {
|
||||
SEG_ABSOLUTE = 0,
|
||||
#ifdef MANY_SEGMENTS
|
||||
/* For the moment, we allow only 10 extra segments to be specified by the user */
|
||||
SEG_E0, SEG_E1,SEG_E2,SEG_E3,SEG_E4,SEG_E5,SEG_E6,SEG_E7,SEG_E8,SEG_E9,
|
||||
#else
|
||||
SEG_TEXT,
|
||||
SEG_DATA,
|
||||
SEG_BSS,
|
||||
#endif
|
||||
SEG_LIST,
|
||||
SEG_UNKNOWN,
|
||||
SEG_ABSENT, /* Mythical Segment (absent): NO expression seen. */
|
||||
SEG_PASS1, /* Mythical Segment: Need another pass. */
|
||||
|
@ -57,17 +57,35 @@ ebmon)
|
||||
generic) obj_format=generic ;;
|
||||
|
||||
hds)
|
||||
obj_format=ieee
|
||||
obj_format=coff-bfd
|
||||
need_bfd="$(unsubdir)/../bfd$(subdir)/libbfd.a"
|
||||
;;
|
||||
|
||||
coff* | sysv*) obj_format=coff ;;
|
||||
sysv32)
|
||||
obj_format=coff
|
||||
emulation=sysv32
|
||||
;;
|
||||
|
||||
coff* | sysv*)
|
||||
obj_format=coff
|
||||
|
||||
case ${target_vendor} in
|
||||
bull) emulation=dpx2 ;;
|
||||
sco) emulation=sco386 ;;
|
||||
sun) emulation=sun3 ;;
|
||||
*)
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
case ${target_vendor} in
|
||||
aout) obj_format=aout ;;
|
||||
bout) obj_format=bout ;;
|
||||
coff) obj_format=coff ;;
|
||||
coff)
|
||||
obj_format=coff
|
||||
case ${target_cpu} in
|
||||
i960) emulation=ic960 ;;
|
||||
esac
|
||||
;;
|
||||
*) obj_format=aout ;;
|
||||
esac
|
||||
;;
|
||||
|
@ -5,7 +5,7 @@ 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 1, or (at your option)
|
||||
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,
|
||||
@ -56,10 +56,32 @@ extern frchainS * frchain_now;
|
||||
/* chain, even if it contains no (complete) */
|
||||
/* frags. */
|
||||
|
||||
|
||||
#ifdef MANY_SEGMENTS
|
||||
typedef struct
|
||||
{
|
||||
frchainS *frchainP;
|
||||
int hadone;
|
||||
int user_stuff;
|
||||
struct frag *frag_root;
|
||||
struct frag *last_frag;
|
||||
fixS *fix_root;
|
||||
fixS *fix_tail;
|
||||
struct internal_scnhdr scnhdr;
|
||||
symbolS *dot;
|
||||
|
||||
struct lineno_list *lineno_list_head;
|
||||
struct lineno_list *lineno_list_tail;
|
||||
|
||||
} segment_info_type;
|
||||
segment_info_type segment_info[];
|
||||
#else
|
||||
extern frchainS * data0_frchainP;
|
||||
/* Sentinel for frchain crawling. */
|
||||
/* Points to the 1st data-segment frchain. */
|
||||
/* (Which is pointed to by the last text- */
|
||||
/* segment frchain.) */
|
||||
|
||||
#endif
|
||||
|
||||
/* end: subsegs.h */
|
||||
|
Loading…
Reference in New Issue
Block a user