Changeset View
Changeset View
Standalone View
Standalone View
compiler-rt/test/msan/param_tls_limit.cpp
// ParamTLS has limited size. Everything that does not fit is considered fully | // ParamTLS has limited size. Everything that does not fit is considered fully | ||||
// initialized. | // initialized. | ||||
// RUN: %clangxx_msan -O0 %s -o %t && %run %t | // RUN: %clangxx_msan -fno-sanitize-memory-param-retval -O0 %s -o %t && %run %t | ||||
// RUN: %clangxx_msan -fsanitize-memory-track-origins -O0 %s -o %t && %run %t | // RUN: %clangxx_msan -fno-sanitize-memory-param-retval -fsanitize-memory-track-origins -O0 %s -o %t && %run %t | ||||
// RUN: %clangxx_msan -fsanitize-memory-track-origins=2 -O0 %s -o %t && %run %t | // RUN: %clangxx_msan -fno-sanitize-memory-param-retval -fsanitize-memory-track-origins=2 -O0 %s -o %t && %run %t | ||||
// | // | ||||
// AArch64 fails with: | // AArch64 fails with: | ||||
// void f801(S<801>): Assertion `__msan_test_shadow(&s, sizeof(s)) == -1' failed | // void f801(S<801>): Assertion `__msan_test_shadow(&s, sizeof(s)) == -1' failed | ||||
// XFAIL: aarch64 | // XFAIL: aarch64 | ||||
// When passing huge structs by value, SystemZ uses pointers, therefore this | // When passing huge structs by value, SystemZ uses pointers, therefore this | ||||
// test in its present form is unfortunately not applicable. | // test in its present form is unfortunately not applicable. | ||||
// ABI says: "A struct or union of any other size <snip>. Replace such an | // ABI says: "A struct or union of any other size <snip>. Replace such an | ||||
// argument by a pointer to the object, or to a copy where necessary to enforce | // argument by a pointer to the object, or to a copy where necessary to enforce | ||||
▲ Show 20 Lines • Show All 81 Lines • Show Last 20 Lines |