This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gcc 3.1 is still very slow, compared to 2.95.3


On Sun, May 19, 2002 at 04:59:11AM -0700, David S. Miller wrote:
> I promise to look more deeply into this.  It may be a Sparc specific
> problem because x86 outputs:
> 
> 	movl	$0, (%eax)
> 	movw	code, (%eax)

No, x86 does this because !STRICT_ALIGNMENT.  Somehow we've lost
the known alignment of the type during the memset.

> Well, better yet:
> 
> 	movw	code, (%eax)
> 	movw	$0, 2(%eax)

Again, better yet

	movl	code, (%eax)

> The Sparc output is very perplexing because GCC eliminated one of
> the byte stores that overlapped the store of "code" but not both
> of them!

That is curious.  I'd have expected the dead store elimination
code in flow to be able to handle that.


r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]