Subject: Re: StrongARM K bug
To: Nicholas Clark <nick@flirble.org>
From: Richard Earnshaw <rearnsha@arm.com>
List: port-arm32
Date: 03/29/1999 10:45:40
nick@flirble.org said:
> Is this of direct use to BSD?
I wrote a utility some time ago (which was posted on this list), which is
generally a better work-around than rogering the compiler. My utility
identified just those problem instructions that lay on a page boundary and
moved them to a safe location in the binary image. While it was
theoretically possible for this program's heuristics to make a mistake,
I've never known it to (however, I no-longer have a Rev-K, so I don't know
how much other people are using it).
A full "fix" to the compiler would require that you never allow the PC to
be loaded directly from memory (except via B or BL) -- this will make some
return instruction sequences really slow, and will also impact pointers to
functions and table-jumps.
Summary: I still don't think fixing the compiler is the correct way to
address this bug.
Richard (gcc/arm maintainer).