summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/DeclBase.cpp
diff options
context:
space:
mode:
authorGeorge Karpenkov <ekarpenkov@apple.com>2017-05-23 21:58:54 +0000
committerGeorge Karpenkov <ekarpenkov@apple.com>2017-05-23 21:58:54 +0000
commit9017ca290aba42802a42b5d5eb4e04b754518df9 (patch)
treef38db0568802808cf7104a42822e7687e6b74cab /clang/lib/AST/DeclBase.cpp
parent8c605c0edaa909f44e6e4c753eb630035de61857 (diff)
downloadbcm5719-llvm-9017ca290aba42802a42b5d5eb4e04b754518df9.tar.gz
bcm5719-llvm-9017ca290aba42802a42b5d5eb4e04b754518df9.zip
Disable coverage opt-out for strong postdominator blocks.
Coverage instrumentation has an optimization not to instrument extra blocks, if the pass is already "accounted for" by a successor/predecessor basic block. However (https://github.com/google/sanitizers/issues/783) this reasoning may become circular, which stops valid paths from having coverage. In the worst case this can cause fuzzing to stop working entirely. This change simplifies logic to something which trivially can not have such circular reasoning, as losing valid paths does not seem like a good trade-off for a ~15% decrease in the # of instrumented basic blocks. llvm-svn: 303698
Diffstat (limited to 'clang/lib/AST/DeclBase.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud