Subject: Re: StrongARM K bug
To: None <richard.earnshaw@arm.com>
From: Steve Dicks <steve@starswan.demon.co.uk>
List: port-arm32
Date: 03/29/1999 22:12:14
On Mon, 29 Mar 1999 19:49:13 +0100, rearnsha@arm.com said:

>
> .align 3 (by which I assume you mean align to a 2^3 boundary -- different 
> arm assemblers unfortunately put different interpretations on this 
> *groan*) has no meaning unless the section that it is placed in is also 
> guaranteed to be this aligned.  I can't speak for the ELF format off the 
> top of my head but this is not the case for a.out which only aligns 
> sections to a 4-byte boundary.  It also fills the instruction stream with 
> arbitrary padding that aren't guaranteed to be nop instructions (though I 
> think that they will normally have that effect with gas -- 0 == andeq r0, 
> r0, r0).   Don't forget that gcc emits conditional ldm...{...,pc} as well. 
>  Packing these out can really hose your performance.
>
*hose* ? Doesn't this mean 'drag to a grinding halt'? Really?
> > 
> >  
> > > Summary: I still don't think fixing the compiler is the correct way to 
> > > address this bug.
> > > 

But has Nicholas got the fix right? I'm sure most ordinary 200MHz Rev K users
would treat this as a major leap forward; after all, Linux manages to fix the 'F00F'
bug without asking everyone to upgrade their x86's to non-buggy ones...
> > > Richard (gcc/arm maintainer).
> > 

Does your 'this isnt the right approach' thing mean that the patch for egcs won't
be put into NetBSD/arm32? Cos if so, I'm off to the Linux camp right now... :-)



-- 
Steve Dicks - Starswan Systems Ltd
Hertfordshire's premier one-man Systems Consultancy