From 462088b88636b590a613c8717009fcded26927b0 Mon Sep 17 00:00:00 2001 From: Steve Chamberlain Date: Thu, 16 Jul 1992 15:22:26 +0000 Subject: [PATCH] * write.c (fixup_segment): if relaxing, don't do anything. * config/obj-bout.[ch] : maintain the a_relaxable file header info * config/tc-i960.c: new option -linkrelax --- gas/ChangeLog | 42 +++++++++++++++++++++++++++++++++++++++++- gas/config/obj-bout.c | 4 +++- gas/config/obj-bout.h | 12 ++++++------ 3 files changed, 50 insertions(+), 8 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 5b8ccae73dd..fa50013dc00 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,23 @@ +Thu Jul 16 08:20:17 1992 Steve Chamberlain (sac@thepub.cygnus.com) + + * write.c (fixup_segment): if relaxing, don't do anything. + * config/obj-bout.[ch] : maintain the a_relaxable file header info + * config/tc-i960.c: new option -linkrelax + +Mon Jul 13 14:11:36 1992 Steve Chamberlain (sac@thepub.cygnus.com) + + * expr.c (expr): allow SEG_BSS in expressions + * read.c (potable): align should be nbytes, not ptwo! + * write.c (write_object_file): extra glue for new bss attributes + (relax_segment): SEG_BSS is ok now + * config/tc-m68k.c (m68k_ip_op): can now parse more @( modes + +Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com) + + * configure.in: recognize m680x0 as having sun3 emulation mode for + vxworks environment. + + Tue Jun 30 20:25:54 1992 D. V. Henkel-Wallace (gumby@cygnus.com) * Makefile.in: Add program_suffix (parallel to program_prefix) @@ -19,7 +39,26 @@ Tue Jun 9 07:54:54 1992 Steve Chamberlain (sac@thepub.cygnus.com) * write.c (write_object_file): various changes to handle data in the BSS segment in much the same was as stuff in the DATA segment. - * subsegs.c (subseg_change): allow and handle a change into SEG_BSS. + +Thu Jun 4 11:59:13 1992 Steve Chamberlain (sac@thepub.cygnus.com) + + * expr.c(expr): allow SEG_REGISTER in expressions. + * read.c(pseudo_set): register expressions can be the source of a + set. + * subsegs.c (subseg_new): Now -R forces all changes to SEG_DATA to + goto SEG_TEXT (if a.out) + * write.c (write_object_file): If a.out don't use the old way for + -R. + * config/obj-a.out (s_sect): complain if the user tries to use a + subsegment with a value which might interfere with out -R hackery. + * config/tc-m68k.c (m68k_reg_parse): lookup names in symbol table + rather than use ugly if tree. (init_regtable): insert register + names into symbol table. + +Tue Jun 2 16:47:09 1992 Steve Chamberlain (sac@cygnus.com) + + * write.c (write_object_file): keep the fix_tail clean, which + fixes a bug in -R where relocations were being lost. Thu Jun 4 11:59:13 1992 Steve Chamberlain (sac@thepub.cygnus.com) @@ -46,6 +85,7 @@ Mon Jun 1 16:20:22 1992 Michael Tiemann (tiemann@cygnus.com) * configure.in: recognize m680x0 as having sun3 emulation mode for vxworks environment. +>>>>>>> 1.62 Sun May 31 05:33:00 1992 david d `zoo' zuhn (zoo@cygnus.com) * configure.in: recognize m680x0 as an m68k diff --git a/gas/config/obj-bout.c b/gas/config/obj-bout.c index 28d3e749d5e..f07f6f9e428 100644 --- a/gas/config/obj-bout.c +++ b/gas/config/obj-bout.c @@ -130,7 +130,9 @@ object_headers *headers; headers->header.a_tload = 0; headers->header.a_dload = md_section_align(SEG_DATA, H_GET_TEXT_SIZE(headers)); - + + headers->header.a_relaxable = linkrelax; + append(where, (char *) &headers->header, sizeof(headers->header)); } /* a_header_append() */ diff --git a/gas/config/obj-bout.h b/gas/config/obj-bout.h index 8138cda6166..8489004ddb3 100644 --- a/gas/config/obj-bout.h +++ b/gas/config/obj-bout.h @@ -100,12 +100,12 @@ struct exec { unsigned long a_drsize; /* Length of data relocation info */ /* Added for i960 */ - unsigned long a_tload; /* Text runtime load address */ - unsigned long a_dload; /* Data runtime load address */ - unsigned char a_talign; /* Alignment of text segment */ - unsigned char a_dalign; /* Alignment of data segment */ - unsigned char a_balign; /* Alignment of bss segment */ - unsigned char unused; /* (Just to make struct size a multiple of 4) */ + unsigned long a_tload; /* Text runtime load address */ + unsigned long a_dload; /* Data runtime load address */ + unsigned char a_talign; /* Alignment of text segment */ + unsigned char a_dalign; /* Alignment of data segment */ + unsigned char a_balign; /* Alignment of bss segment */ + unsigned char a_relaxable; /* Contains enough info to relax */ }; #define N_BADMAG(x) (((x).a_magic)!=BMAGIC) -- 2.30.2