Subject: Re: Fixes for acorn32 build after GCC4 upgrade
To: Mike Pumford <mpumford@black-star.demon.co.uk>
From: Richard Earnshaw <rearnsha@arm.com>
List: current-users
Date: 06/28/2006 14:37:29
On Tue, 2006-06-27 at 22:20, Mike Pumford wrote:
> David Laight wrote:
> 
> > Woudn't it be better to dereference a pointer to a volatile memory location
> > inside the loop - that way the compiler isn't allowed to optimise the
> > loop away.
> > 
> The volatile variables seem to be enough for now. Although I can see a 
> cleverer optimiser requiring the fix you propose.
> 
> A better fix would be to actually use a hardware timer. If I can figure 
> out a way of doing that on acorn32 I'll see if I can fix the routine so 
> that it no longer depends on the delay loop at all.

Even better would be to fix the code so that it didn't need that
horrible hack.  Most of the other ports manage to do it, though it might
mean that the machine startup code has to do a bit more work.  See, for
example, i80321_calibrate_delay in evbarm/iq80321/iq80321_machdep.c and
arm/xscale/i80321_timer.c

R.