The following code, when compiled on x86 with "-O2 -mmmx" will crash gcc 3.4.5: int main() { union { __attribute__ ((mode(V8QI))) v; int i; } a, b; a.v = __builtin_ia32_punpcklbw(a.v, b.v); printf("%x", a.i); } Thanks, Jo
The following code, when compiled on x86 with "-O2 -mmmx" will crash gcc 3.4.5: int main() { union { __attribute__ ((mode(V8QI))) v; int i; } a, b; a.v = __builtin_ia32_punpcklbw(a.v, b.v); printf("%x", a.i); } Thanks, Joël
The error is: "internal compiler error: in simplify_binary_operation, at simplify-rtx.c:2012"
Confirmed. This does work on >=gcc-4 as far as I can tell though, so getting a fix upstream may be difficult. I'll see if I can find the fix and backport it.
Fixed in gcc-4.0. I'd rather not incorporate patches unless they are absolutely needed.