------- Comment #5 from hjl at lucon dot org 2006-06-07 15:51 ------- This testcase doesn't use -Os on SSE registers:
[EMAIL PROTECTED] stack]$ cat m.c #include <stdio.h> extern char *e1 (void); int main () { printf ("%s\n", e1 ()); return 0; } [EMAIL PROTECTED] stack]$ cat x.c #include <emmintrin.h> extern char *e1 (void); char *e1 (void) { volatile __m128 dummy = _mm_set_ps1(0.f); return "OK"; } [EMAIL PROTECTED] stack]$ make gcc -Os -c -o m.o m.c gcc -O -msse2 -c -o x.o x.c gcc -o m m.o x.o ./m make: *** [all] Segmentation fault [EMAIL PROTECTED] stack]$ It calls a function which uses SSE registers. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27537