diff options
Diffstat (limited to 'lib/msan/lit_tests/insertvalue_origin.cc')
-rw-r--r-- | lib/msan/lit_tests/insertvalue_origin.cc | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/lib/msan/lit_tests/insertvalue_origin.cc b/lib/msan/lit_tests/insertvalue_origin.cc deleted file mode 100644 index 769ea45f8c4db..0000000000000 --- a/lib/msan/lit_tests/insertvalue_origin.cc +++ /dev/null @@ -1,35 +0,0 @@ -// RUN: %clangxx_msan -fsanitize-memory-track-origins -m64 -O0 %s -o %t && not %t >%t.out 2>&1 -// RUN: FileCheck %s < %t.out && FileCheck %s < %t.out -// RUN: %clangxx_msan -fsanitize-memory-track-origins -m64 -O3 %s -o %t && not %t >%t.out 2>&1 -// RUN: FileCheck %s < %t.out && FileCheck %s < %t.out - -// Test origin propagation through insertvalue IR instruction. - -#include <stdio.h> -#include <stdint.h> - -struct mypair { - int64_t x; - int y; -}; - -mypair my_make_pair(int64_t x, int y) { - mypair p; - p.x = x; - p.y = y; - return p; -} - -int main() { - int64_t * volatile p = new int64_t; - mypair z = my_make_pair(*p, 0); - if (z.x) - printf("zzz\n"); - // CHECK: MemorySanitizer: use-of-uninitialized-value - // CHECK: {{in main .*insertvalue_origin.cc:}}[[@LINE-3]] - - // CHECK: Uninitialized value was created by a heap allocation - // CHECK: {{in main .*insertvalue_origin.cc:}}[[@LINE-8]] - delete p; - return 0; -} |