Unaligned floating point access generation for powerpc
Mike Stump
mrs@apple.com
Sat Oct 25 13:40:00 GMT 2003
On Wednesday, October 22, 2003, at 08:09 AM, David Edelsohn wrote:
> The programmer is overriding the ABI definitions for alignment.
> The compiler assumes the programmer knows what s/he is doing.
> Violating
> the ABI may produce inefficient code. Why do you expect the compiler
> to
> do anything else?
?
The compiler is allowed to produce inefficient code, the compiler isn't
allowed to produce code that doesn't work. To do so, would be a bug.
Now, the bug may me that gcc always assumes the existence of a trap
handler to do the move and hasn't been ported to a ppc without such a
handler, or the bug may be that the backend can't assume that and must
generate a move by pieces style code.
I'd call it a compiler bug in any event. Worst case, the target
platform doesn't allow for trap handlers and gcc just has to be smart
enough to generate code that will never fault.
More information about the Gcc
mailing list