Bug#458745: arm-only miscompilation of alloca code
* Martin Michlmayr <tbm@cyrius.com> [2008-01-21 18:33]:
> > This address looks highly suspicious as it is not aligned while the type
> > is a (void*).
> >
> > On ARM unaligned access are not guaranteed to work and actually
> > depends on the CPU. On some of them it works as on i386, while usually
> > you get the aligned word, but rotated depending on the mis-alignement.
> >
> > In short non-aligned accesses do not generate a SIGBUS, but rather
> > return "corrupted" data, so here a wrong address that could lead to a
> > segfault.
> >
> > If you look at the bug log, all tests with aligned address work. The
> > others segfault or return (nil) as on tbm's machine.
>
> Any comments, Camm?
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34652#c2 contains another
good describing why this is not a bug in gcc but the test case.
--
Martin Michlmayr
http://www.cyrius.com/
Reply to: