------- 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