Changeset View
Changeset View
Standalone View
Standalone View
compiler-rt/test/msan/vector_cvt.cpp
// RUN: %clangxx_msan -O0 %s -o %t && %run %t | // RUN: %clangxx_msan -O0 %s -o %t && %run %t | ||||
// RUN: %clangxx_msan -DPOSITIVE -O0 %s -o %t && not %run %t 2>&1 | FileCheck %s | // RUN: %clangxx_msan -DPOSITIVE -O0 %s -o %t && not %run %t 2>&1 | FileCheck %s | ||||
// REQUIRES: x86_64-target-arch | // REQUIRES: x86_64-target-arch | ||||
#include <emmintrin.h> | #include <emmintrin.h> | ||||
int to_int(double v) { | int to_int(double &v) { | ||||
__m128d t = _mm_set_sd(v); | __m128d t = _mm_set_sd(v); | ||||
int x = _mm_cvtsd_si32(t); | int x = _mm_cvtsd_si32(t); | ||||
return x; | return x; | ||||
// CHECK: WARNING: MemorySanitizer: use-of-uninitialized-value | // CHECK: WARNING: MemorySanitizer: use-of-uninitialized-value | ||||
// CHECK: #{{.*}} in to_int{{.*}}vector_cvt.cpp:[[@LINE-3]] | // CHECK: #{{.*}} in to_int{{.*}}vector_cvt.cpp:[[@LINE-3]] | ||||
} | } | ||||
int main() { | int main() { | ||||
Show All 9 Lines |