diff options
author | Alexey Samsonov <samsonov@google.com> | 2013-04-11 13:21:41 +0000 |
---|---|---|
committer | Alexey Samsonov <samsonov@google.com> | 2013-04-11 13:21:41 +0000 |
commit | a672ba6e8fcc7e7e9854ef0586c9125e0b0f1d87 (patch) | |
tree | eab4cb4353830a7d52a4e4d5180b6a6e74e8d829 | |
parent | a28f36c2e2e23d642d37e030baefa7953b92366c (diff) | |
download | bcm5719-llvm-a672ba6e8fcc7e7e9854ef0586c9125e0b0f1d87.tar.gz bcm5719-llvm-a672ba6e8fcc7e7e9854ef0586c9125e0b0f1d87.zip |
[ASan] test source-based init-order blacklisting added in r179280
llvm-svn: 179281
3 files changed, 15 insertions, 1 deletions
diff --git a/compiler-rt/lib/asan/lit_tests/Helpers/initialization-blacklist-extra2.cc b/compiler-rt/lib/asan/lit_tests/Helpers/initialization-blacklist-extra2.cc new file mode 100644 index 00000000000..69455a0a6fc --- /dev/null +++ b/compiler-rt/lib/asan/lit_tests/Helpers/initialization-blacklist-extra2.cc @@ -0,0 +1,4 @@ +int zero_init(); +int badSrcGlobal = zero_init(); +int readBadSrcGlobal() { return badSrcGlobal; } + diff --git a/compiler-rt/lib/asan/lit_tests/Helpers/initialization-blacklist.txt b/compiler-rt/lib/asan/lit_tests/Helpers/initialization-blacklist.txt index c5f6610937f..fa4a83667f4 100644 --- a/compiler-rt/lib/asan/lit_tests/Helpers/initialization-blacklist.txt +++ b/compiler-rt/lib/asan/lit_tests/Helpers/initialization-blacklist.txt @@ -1,2 +1,3 @@ global-init:*badGlobal* global-init-type:*badNamespace::BadClass* +global-init-src:*initialization-blacklist-extra2.cc diff --git a/compiler-rt/lib/asan/lit_tests/initialization-blacklist.cc b/compiler-rt/lib/asan/lit_tests/initialization-blacklist.cc index d0f86a7dce3..12fbc49ed91 100644 --- a/compiler-rt/lib/asan/lit_tests/initialization-blacklist.cc +++ b/compiler-rt/lib/asan/lit_tests/initialization-blacklist.cc @@ -1,26 +1,32 @@ // Test for blacklist functionality of initialization-order checker. // RUN: %clangxx_asan -m64 -O0 %s %p/Helpers/initialization-blacklist-extra.cc\ +// RUN: %p/Helpers/initialization-blacklist-extra2.cc \ // RUN: -fsanitize-blacklist=%p/Helpers/initialization-blacklist.txt \ // RUN: -fsanitize=init-order -o %t // RUN: ASAN_OPTIONS=check_initialization_order=true %t 2>&1 // RUN: %clangxx_asan -m64 -O1 %s %p/Helpers/initialization-blacklist-extra.cc\ +// RUN: %p/Helpers/initialization-blacklist-extra2.cc \ // RUN: -fsanitize-blacklist=%p/Helpers/initialization-blacklist.txt \ // RUN: -fsanitize=init-order -o %t // RUN: ASAN_OPTIONS=check_initialization_order=true %t 2>&1 // RUN: %clangxx_asan -m64 -O2 %s %p/Helpers/initialization-blacklist-extra.cc\ +// RUN: %p/Helpers/initialization-blacklist-extra2.cc \ // RUN: -fsanitize-blacklist=%p/Helpers/initialization-blacklist.txt \ // RUN: -fsanitize=init-order -o %t // RUN: ASAN_OPTIONS=check_initialization_order=true %t 2>&1 // RUN: %clangxx_asan -m32 -O0 %s %p/Helpers/initialization-blacklist-extra.cc\ +// RUN: %p/Helpers/initialization-blacklist-extra2.cc \ // RUN: -fsanitize-blacklist=%p/Helpers/initialization-blacklist.txt \ // RUN: -fsanitize=init-order -o %t // RUN: ASAN_OPTIONS=check_initialization_order=true %t 2>&1 // RUN: %clangxx_asan -m32 -O1 %s %p/Helpers/initialization-blacklist-extra.cc\ +// RUN: %p/Helpers/initialization-blacklist-extra2.cc \ // RUN: -fsanitize-blacklist=%p/Helpers/initialization-blacklist.txt \ // RUN: -fsanitize=init-order -o %t // RUN: ASAN_OPTIONS=check_initialization_order=true %t 2>&1 // RUN: %clangxx_asan -m32 -O2 %s %p/Helpers/initialization-blacklist-extra.cc\ +// RUN: %p/Helpers/initialization-blacklist-extra2.cc \ // RUN: -fsanitize-blacklist=%p/Helpers/initialization-blacklist.txt \ // RUN: -fsanitize=init-order -o %t // RUN: ASAN_OPTIONS=check_initialization_order=true %t 2>&1 @@ -33,6 +39,9 @@ int x = readBadGlobal(); // init-order bug. int accessBadObject(); int y = accessBadObject(); // init-order bug. +int readBadSrcGlobal(); +int z = readBadSrcGlobal(); // init-order bug. + int main(int argc, char **argv) { - return argc + x + y - 1; + return argc + x + y + z - 1; } |