* write.c (fixup_segment): if relaxing, don't do anything.
authorSteve Chamberlain <sac@cygnus>
Thu, 16 Jul 1992 15:22:26 +0000 (15:22 +0000)
committerSteve Chamberlain <sac@cygnus>
Thu, 16 Jul 1992 15:22:26 +0000 (15:22 +0000)
* config/obj-bout.[ch] : maintain the a_relaxable file header info
* config/tc-i960.c: new option -linkrelax

gas/ChangeLog
gas/config/obj-bout.c
gas/config/obj-bout.h

index 5b8ccae73dd08f50ab13f0d071eb7f496d3f4ba4..fa50013dc0061f551b7e2b796eb446fdf09979ba 100644 (file)
@@ -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
index 28d3e749d5e18b61e6bd9657047437a3f49022ad..f07f6f9e4281c4a56ffb2cdc3b556a25ebbfc54b 100644 (file)
@@ -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() */
 
index 8138cda6166e375b883f70a4554a80d08a29db45..8489004ddb3925cad76af6b913b4bc1a0c824ad2 100644 (file)
@@ -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)