aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/SimplifyCFG.cpp
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2021-08-12 15:43:09 +0200
committerDmitry Vyukov <dvyukov@google.com>2021-08-16 10:01:50 +0200
commit7142eb17fb3419a76c9ac4afce0df986ff08d61c (patch)
treebbfe0d79953d4444b4e39efafcbab054da26f316 /llvm/lib/Transforms/Utils/SimplifyCFG.cpp
parent09507b53250dc266632c204558cb1c2b56e8ddea (diff)
downloadllvm-7142eb17fb3419a76c9ac4afce0df986ff08d61c.zip
llvm-7142eb17fb3419a76c9ac4afce0df986ff08d61c.tar.gz
llvm-7142eb17fb3419a76c9ac4afce0df986ff08d61c.tar.bz2
sanitizers: compile with -O1 under debug
Tsan's check_memcpy.c test was disabled under debug because it failed. But it points to real issues and does not help to just disable it. I tried to enable it and see what fail and the first hit was default ctor for: struct ChainedOriginDepotDesc { u32 here_id; u32 prev_id; }; initializing these fields to 0's help partially, but compiler still emits memset before calling ctor. I did not try to see what's the next failure, because if it fails on such small structs, it won't be realistic to fix everything and keep working. Compile runtimes with -O1 under debug instead. It seems to fix all current failures. At least I run check-tsan under clang/gcc x debug/non-debug and all combinations passed. -O1 does not usually use too aggressive optimizations and sometimes even makes debugging easier because machine code is not exceedingly verbose. Reviewed By: vitalybuka Differential Revision: https://reviews.llvm.org/D107962
Diffstat (limited to 'llvm/lib/Transforms/Utils/SimplifyCFG.cpp')
0 files changed, 0 insertions, 0 deletions