[SelectOpt] Support ADD and SUB with zext operands. (#115489)
[llvm-project.git] / compiler-rt / test / msan / vector_cvt.cpp
blobf318f666d397b52301470484116eef021a395eac
1 // RUN: %clangxx_msan -O0 %s -o %t && %run %t
2 // RUN: %clangxx_msan -DPOSITIVE -O0 %s -o %t && not %run %t 2>&1 | FileCheck %s
3 // REQUIRES: x86_64-target-arch
5 #include <emmintrin.h>
7 int to_int(double &v) {
8 __m128d t = _mm_set_sd(v);
9 int x = _mm_cvtsd_si32(t);
10 return x;
11 // CHECK: WARNING: MemorySanitizer: use-of-uninitialized-value
12 // CHECK: #{{.*}} in to_int{{.*}}vector_cvt.cpp:[[@LINE-3]]
15 int main() {
16 #ifdef POSITIVE
17 double v;
18 #else
19 double v = 1.1;
20 #endif
21 double* volatile p = &v;
22 int x = to_int(*p);
23 return !x;