https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94603
--- Comment #6 from Uroš Bizjak <ubizjak at gmail dot com> --- (In reply to Jakub Jelinek from comment #5) > (In reply to Uroš Bizjak from comment #4) > > (In reply to Jakub Jelinek from comment #3) > > > The testcase will need -msse -mno-sse2. > > > > Yes, but the testcase is invalid, because __builtin_ia32_movq128 should not > > be used without SSE2. Fixed compiler reports: > > > > pr94603.c: In function ‘foo’: > > pr94603.c:6:10: warning: implicit declaration of function > > ‘__builtin_ia32_movq128’; did you mean ‘__builtin_ia32_movntps’? > > [-Wimplicit-function-declaration] > > pr94603.c:6:10: error: incompatible types when returning type ‘int’ but ‘V’ > > {aka ‘__vector(2) long long int’} was expected > > I know. But we (often) include even invalid testcases, perhaps with just > dg-error "" and dg-warning "" (or use -w too) if we don't care about exact > wording but just want to verify there is no ICE. This is the testcase: --cut here-- /* PR target/94603 */ /* { dg-do compile } */ /* { dg-options "-Wno-implicit-function-declaration -msse -mno-sse2" } */ typedef long long __attribute__ ((__vector_size__ (16))) V; V foo (V v) { return __builtin_ia32_movq128 (v); /* { dg-error "" } */ } --cut here--