[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: not working alignment in as + ld
From: |
Nick Clifton |
Subject: |
Re: not working alignment in as + ld |
Date: |
14 Jun 2002 12:26:07 +0100 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) Emacs/21.1 |
Hi Sergey,
> Using gcc's __attribute__((align(16))) functionality (necessary for sse2
> and partially sse) results in the compiler correctly generating
> .align directives.
> They are not ignored by the assembler and generated symbols are properly
> aligned in single object-file. But the size of object file is not 16-byte
> aligned. Linked by ld it will be no more aligned in resulting data
> segments.
> As workaround (and probably as fix) I copied the part of coff-go32.c file
> into pe-i386.c and pei-i386.c files in BFD-library to force gas to produce
> 16-bytes aligned data-segments like it is done for i386-GO32 platform.
Thanks very much for suggesting this fix. I have applied a patch to
the relevant files.
Cheers
Nick
2002-06-14 Sergey Grigoriev <address@hidden>
* pei-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Enable 16 byte
alignment for .bss, .data and .text sections so that sse and sse2
code will work.
* pe-i386.c (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise.