delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2001/09/18/07:47:09

Date: Tue, 18 Sep 2001 14:43:21 +0300
From: "Eli Zaretskii" <eliz AT is DOT elta DOT co DOT il>
Sender: halo1 AT zahav DOT net DOT il
To: pavenis AT lanet DOT lv
Message-Id: <2561-Tue18Sep2001144320+0300-eliz@is.elta.co.il>
X-Mailer: Emacs 20.6 (via feedmail 8.3.emacs20_6 I) and Blat ver 1.8.9
CC: djgpp-workers AT delorie DOT com
In-reply-to: <Pine.A41.4.05.10109181108500.28200-100000@ieva06> (message from
Andris Pavenis on Tue, 18 Sep 2001 11:24:42 +0300 (WET))
Subject: Re: GCC 2.9x and 3.x produces larger code
References: <Pine DOT A41 DOT 4 DOT 05 DOT 10109181108500 DOT 28200-100000 AT ieva06>
Reply-To: djgpp-workers AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp-workers AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

> Date: Tue, 18 Sep 2001 11:24:42 +0300 (WET)
> From: Andris Pavenis <pavenis AT lanet DOT lv>
> 
> I think one of the reasons is code and data alignment. For example 
> gcc-3.0.1 Linux to DJGPP cross-compiler generates:
> 	'.p2align 4' before procedure code
> 	'.p2align 4,,7' in some other places inside procedure (like
> 		before then begin of loop)

I don't think so: in two object files I compared (after "objdump -d"),
I counted only 269 nop instructions, which is 269 bytes.  That object
file was 1.5KB larger when compiled with GCC 3.0.1.

> These alignment instructions are generated also by gcc-2.95.3, so I think
> it would be more correct to compare with that version when compiler 
> options for optimizing size are being used.

Comparison with 2.95.3 yields similar results; that is, 2.95.3 also
produces larger code.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019