diff options
author | obrien <obrien@FreeBSD.org> | 2002-06-06 03:28:49 +0000 |
---|---|---|
committer | obrien <obrien@FreeBSD.org> | 2002-06-06 03:28:49 +0000 |
commit | 616a2ae30e25440bc55adf3875d0219669c851d6 (patch) | |
tree | c2a46624c74e1b88ff290bec2a7f25973a088516 /contrib | |
parent | 52aeefcdd8da747eb73fd796806683b63ca850c2 (diff) | |
download | FreeBSD-src-616a2ae30e25440bc55adf3875d0219669c851d6.zip FreeBSD-src-616a2ae30e25440bc55adf3875d0219669c851d6.tar.gz |
Fix excessive alignment for the aout case, and unbreak genassym for that case.
Our aout linker has alignment hacks and doesn't need gcc to do anything special.
Tested for a year by: bde :-)
Diffstat (limited to 'contrib')
-rw-r--r-- | contrib/gcc/config/i386/freebsd.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/contrib/gcc/config/i386/freebsd.h b/contrib/gcc/config/i386/freebsd.h index 34c458d..0dfaba1 100644 --- a/contrib/gcc/config/i386/freebsd.h +++ b/contrib/gcc/config/i386/freebsd.h @@ -279,11 +279,10 @@ Boston, MA 02111-1307, USA. */ } \ else \ { \ + int alignbytes = ((ALIGN) + BITS_PER_UNIT - 1) / BITS_PER_UNIT; \ int rounded = (SIZE); \ - if (rounded == 0) rounded = 1; \ - rounded += (BIGGEST_ALIGNMENT / BITS_PER_UNIT) - 1; \ - rounded = (rounded / (BIGGEST_ALIGNMENT / BITS_PER_UNIT) \ - * (BIGGEST_ALIGNMENT / BITS_PER_UNIT)); \ + rounded += alignbytes - 1; \ + rounded = (rounded / alignbytes) * alignbytes; \ fprintf ((FILE), "%s ", COMMON_ASM_OP); \ assemble_name ((FILE), (NAME)); \ fprintf ((FILE), ",%u\n", (rounded)); \ |