diff options
-rw-r--r-- | gas/ChangeLog | 3 | ||||
-rw-r--r-- | gas/config/tc-mips.c | 12 |
2 files changed, 11 insertions, 4 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 9cb014d..2fe618d 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,8 @@ Wed Aug 7 11:50:26 1996 Ian Lance Taylor <ian@cygnus.com> + * config/tc-mips.c (md_section_align): Do align if OBJ_ELF, but + not to more than a 16 byte boundary. + * config/tc-i386.c (tc_gen_reloc): Accept all relocs; remove #ifndef OBJ_ELF lines. From Eric Valette <valette@crf.canon.fr>. (tc_gen_reloc): If out of memory call as_fatal rather than diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index f9b6045..38bcebc 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -7393,13 +7393,17 @@ md_section_align (seg, addr) asection *seg; valueT addr; { -#ifndef OBJ_ELF int align = bfd_get_section_alignment (stdoutput, seg); - return ((addr + (1 << align) - 1) & (-1 << align)); -#else - return addr; +#ifdef OBJ_ELF + /* We don't need to align ELF sections to the full alignment. + However, Irix 5 may prefer that we align them at least to a 16 + byte boundary. */ + if (align > 16) + align = 16; #endif + + return ((addr + (1 << align) - 1) & (-1 << align)); } /* Utility routine, called from above as well. If called while the |