summaryrefslogtreecommitdiffstats
path: root/lld/ELF/InputSection.cpp
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2015-11-11 09:36:26 +0000
committerDmitry Vyukov <dvyukov@google.com>2015-11-11 09:36:26 +0000
commite38d3c8f9f532f587d58bb9c47d957f3831e635f (patch)
tree6a2c7eb05ae7abf6d28ab6ac446cc4e3aec30815 /lld/ELF/InputSection.cpp
parent56e3fefbdc3c6fbce2abb2512a6a1765a97925c1 (diff)
downloadbcm5719-llvm-e38d3c8f9f532f587d58bb9c47d957f3831e635f.tar.gz
bcm5719-llvm-e38d3c8f9f532f587d58bb9c47d957f3831e635f.zip
sanitizer: speedup coverage by 33%
Atomic RMW is not necessary in InitializeGuardArray. It is supposed to run when no user code runs. And if user code runs concurrently, then the atomic RMW won't help anyway. So replace it with non-atomic RMW. InitializeGuardArray takes more than 50% of time during re2 fuzzing: real 0m47.215s 51.56% a.out a.out [.] __sanitizer_reset_coverage 6.68% a.out a.out [.] __sanitizer_cov 3.41% a.out a.out [.] __sanitizer::internal_bzero_aligned16(void*, unsigned long) 1.79% a.out a.out [.] __asan::Allocator::Allocate(unsigned long, unsigned long, With this change: real 0m31.661s 26.21% a.out a.out [.] sanitizer_reset_coverage 10.12% a.out a.out [.] sanitizer_cov 5.38% a.out a.out [.] __sanitizer::internal_bzero_aligned16(void*, unsigned long) 2.53% a.out a.out [.] __asan::Allocator::Allocate(unsigned long, unsigned long, That's 33% speedup. Reviewed in http://reviews.llvm.org/D14537 llvm-svn: 252715
Diffstat (limited to 'lld/ELF/InputSection.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud