1// Make sure we can link a DLL with large functions which would mean
2// functions such as __asan_loadN and __asan_storeN will be called
3// from the DLL. We simulate the large function with
4// -mllvm -asan-instrumentation-with-call-threshold=0.
5// RUN: %clang_cl_asan %s -c -Fo%t.obj -mllvm -asan-instrumentation-with-call-threshold=0
6// RUN: lld-link /nologo /DLL /OUT:%t.dll %t.obj %asan_dll_thunk
7// REQUIRES: asan-static-runtime
8// REQUIRES: lld-available
9
10void f(long* foo, long* bar) {
11 // One load and one store
12 *foo = *bar;
13}
14

source code of compiler-rt/test/asan/TestCases/Windows/msvc/dll_large_function.cpp