Issue 52803
Summary [asan][bug][windows x86] The compilation option release x86, runtime is: / MD / MT, which is not supported
Labels new issue
Assignees
Reporter GimerLover
    In my test, I found that when the compilation option is release x86
Exe: open asan Runtime / MD
DLL: open asan Runtime / MT
When exe actively loadlibrary DLL. Will generate an exception and crash.
However, in the case of release x64, the runtime is normal. I think this is a bug in asan.

Check the source code of Asan. It is found that the problem lies in the initializeshadowmemory function。
source: https://github.com/llvm/llvm-project/blob/main/compiler-rt/lib/asan/asan_shadow_setup.cpp

I found that initializeshadowmemory is called once when / MT and / MD are mixed. 
The address space of shadowmemory. If it is divided by offset address, 
the  addresses are hard coded.
 So when / MD calls initializeshadowmemory successfully。
/ MT will fail to call initializeshadowmemory again. 
Then abort is triggered. Please confirm that this is in line with expectations?
I think this is a problem.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to