From: Eli Zaretskii Newsgroups: comp.os.msdos.djgpp Subject: Re: 8 bytes alignment Date: Fri, 10 Mar 2000 08:09:29 +0200 Organization: NetVision Israel Lines: 21 Message-ID: <38C89199.2A4D29CF@is.elta.co.il> References: <38C4AA6F DOT 6EFAA0A6 AT ssl DOT stu DOT neva DOT ru> <38C5375A DOT 8B4B1EA1 AT is DOT elta DOT co DOT il> <38C76FDD DOT 92C711A7 AT ssl DOT stu DOT neva DOT ru> NNTP-Posting-Host: ras1-p7.rvt.netvision.net.il Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: news.netvision.net.il 952668646 14727 62.0.172.9 (10 Mar 2000 06:10:46 GMT) X-Complaints-To: abuse AT netvision DOT net DOT il NNTP-Posting-Date: 10 Mar 2000 06:10:46 GMT X-Mailer: Mozilla 4.7 [en] (Win98; I) X-Accept-Language: en,ru,hebrew To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Pavel Semjanov wrote: > > > Hmm? Doesn't -malign-double and -mpreferred-stack-boundary work for you? > > Then I use -malign-double the warning below disappears, but data still > is not aligned. Double variables are surely aligned on 8-byte boundaries. So you should be able to trick the compiler by declaring your data double, and then casting it as appropriate. > -mpreferred... doesn't help because the data I use is > global, not local. It shouldn't be hard to copy it to a local variable when you use it. > The only way I found is compile to asm, next I change .comm directives > to .global and .space ones, and insert .p2align 8 before. .p2align 8 is not 8 byte-alignment, it's 256-byte alignment. Use either .p2align 3 or .balign 8.