1 // RUN: %clang_cc1 -triple x86_64-apple-darwin10.0.0 -fsyntax-only -Wuninitialized -fsyntax-only %s -verify
3 typedef int __v4si
__attribute__((__vector_size__(16)));
4 typedef float __m128
__attribute__((__vector_size__(16)));
5 __m128
_mm_xor_ps(__m128 a
, __m128 b
);
6 __m128
_mm_loadu_ps(const float *p
);
8 void test1(float *input
) {
9 __m128 x
, y
, z
, w
, X
; // expected-note {{variable 'x' is declared here}} expected-note {{variable 'y' is declared here}} expected-note {{variable 'w' is declared here}} expected-note {{variable 'z' is declared here}}
10 x
= _mm_xor_ps(x
,x
); // expected-warning {{variable 'x' is uninitialized when used here}}
11 y
= _mm_xor_ps(y
,y
); // expected-warning {{variable 'y' is uninitialized when used here}}
12 z
= _mm_xor_ps(z
,z
); // expected-warning {{variable 'z' is uninitialized when used here}}
13 w
= _mm_xor_ps(w
,w
); // expected-warning {{variable 'w' is uninitialized when used here}}
14 X
= _mm_loadu_ps(&input
[0]);
15 X
= _mm_xor_ps(X
,X
); // no-warning