Diff Detail
Event Timeline
[Sorry I forgot to mention - please add llvm-commits@ to subscribers for all your compiler-rt patches]
The patch looks mostly fine for me, I'll refine it slightly and commit soon (when I have some extra time).
Can you please confirm that this patch doesn't regress "ninja check-all" in your build environment?
(i.e. it's fine if most things that were broken remain broken; it's not OK if anything else starts to fail)
lib/asan/asan_win_dll_thunk.cc | ||
---|---|---|
29 | I think you need volatile or some other constraint to prevent gcc from removing this. |
lib/asan/CMakeLists.txt | ||
---|---|---|
198 | Instead, add a check for this flag existence in cmake/config-ix.cmake, and append it if it's known: set(ASAN_THUNK_CFLAGS ${ASAN_CFLAGS} -DASAN_DYNAMIC_RUNTIME_THUNK) append_if(COMPILER_RT_HAS_Zl_FLAG "-Zl" ASAN_THUNK_CFLAGS) or if it's always available in MSVC and should be added only there, use append_if(MSVC -Zl ASAN_THUNK_CFLAGS) |
if it's always available in MSVC and should be added only there, use
append_if(MSVC -Zl ASAN_THUNK_CFLAGS)
It is available since VS2003 at least, so we can consider it as always.
Can you please use ASAN_DYNAMIC_RUNTIME_THUNK _CFLAGS?
Instead, add a check for this flag existence in cmake/config-ix.cmake, and append it if it's known:
or if it's always available in MSVC and should be added only there, use