| 1 | // RUN: %clangxx_asan -O3 %S/../initialization-nobug.cpp %S/../Helpers/initialization-nobug-extra.cpp -fuse-ld=lld -o %t && %env_asan_opts=check_initialization_order=true:report_globals=3 %run %t 2>&1 | FileCheck %s --implicit-check-not "DynInit" |
| 2 | |
| 3 | // Same as initialization-nobug.cpp, but with lld we expect just one |
| 4 | // `DynInitUnpoison` executed after `AfterDynamicInit` at the end. |
| 5 | // REQUIRES: lld-available |
| 6 | |
| 7 | // With dynamic runtimes `AfterDynamicInit` will called before `executable` |
| 8 | // contructors, with constructors of dynamic runtime. |
| 9 | // XFAIL: asan-dynamic-runtime |
| 10 | |
| 11 | // CHECK: DynInitPoison |
| 12 | // CHECK: DynInitPoison |
| 13 | // CHECK: UnpoisonBeforeMain |
| 14 | // CHECK: DynInitUnpoison |
| 15 | |