First of all, I'd like to apologize for cross-posting to -hackers and
-threads. I'm not sure yet if this is an application bug, a gcc
bug, or a pthreads bug, so here goes...
I'm currently working on the audacity port. It's up to 1.2.3, but I
want to get a problem I've observed with 1.2.2 resolved to make sure
that it doesn't crop up later or affect other software...
Long story short, audacity is a threaded program. A straight compile of
1.2.2 results in a 100% reproducible bus error that happens on multiple
Pentium-4 machines (5.3-STABLE). It always happens at this instruction:
0x081807c4: movaps %xmm0,0xffffff68(%ebp)
Now, at that time ebp is 0xbfadc6c0, so ebp+0xffffff68 (-0x152) is 0xbfadc56e.
Oops, that's not 16-byte aligned like SSE wants. The offsets vary sligthly
depending on the compile flags, etc., but the result is always the same --
Tor Egge reported similar problem to me yesterday. I haven't had a chance
to test his patch, but this supposedly fixes it.