1// RUN: %clangxx_asan %s -o %t -Wl,--gc-sections -fuse-ld=lld -ffunction-sections -fdata-sections -mllvm -asan-globals=0
2// RUN: %clangxx_asan %s -o %t -Wl,--gc-sections -fuse-ld=lld -ffunction-sections -fdata-sections -mllvm -asan-globals=1
3
4// https://code.google.com/p/address-sanitizer/issues/detail?id=260
5// REQUIRES: lld
6int undefined();
7
8// On i386 clang adds --export-dynamic when linking with ASan, which adds all
9// non-hidden globals to GC roots.
10__attribute__((visibility("hidden"))) int (*unused)() = undefined;
11
12int main() {
13 return 0;
14}
15

source code of compiler-rt/test/asan/TestCases/Linux/globals-gc-sections-lld.cpp