summaryrefslogtreecommitdiff
path: root/lib/tsan/check_analyze.sh
AgeCommit message (Collapse)Author
2017-08-18[TSan] Update test valuesVlad Tsyrklevich
Summary: This test was broken by the tail duplication logic being changed in r311139, update the test values and add a note about how to properly run a benchmark to verify that the values are safe to update. Reviewers: vitalybuka Reviewed By: vitalybuka Subscribers: dvyukov, kubamracek Differential Revision: https://reviews.llvm.org/D36889 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@311189 91177308-0d34-0410-b5e6-96231b3b80d8
2017-07-12[tsan] Update test to r307338Vitaly Buka
r307338 enabled new optimization reducing number of operation in tested functions. There is no any performance regression detectable with TsanRtlTest DISABLED_BENCH.Mop* tests. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@307739 91177308-0d34-0410-b5e6-96231b3b80d8
2017-05-16[tsan] Update tsan test for r303084Vitaly Buka
Tail duplication changed number of pop instruction, but TSAN performance was not affected. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@303136 91177308-0d34-0410-b5e6-96231b3b80d8
2017-04-06[TSan] Adjust expectation for check_analyze.shCraig Topper
r299658 fixed a case where InstCombine was replicating instructions instead of combining. Fixing this reduced the number of pushes and pops in the __tsan_read and __tsan_write functions. Adjust the expectations to account for this after talking to Dmitry Vyukov. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@299661 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-03tsan: update tsan_analyze to what tip clang generatesDmitry Vyukov
We used to depend on host gcc. But some distributions got new gcc recently which broke the check. Generally, we can't depend that an arbitrary host gcc generates something stable. Switch to clang. This has an additional advantage of catching regressions in clang codegen. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@268382 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-13[TSan] Adjust expectation for check_analyze.shAlexey Samsonov
r260695 caused extra push/pop instruction pair in __tsan_read1 implementation. Still, that change in InstCombine is believed to be good, as it reduces the number of instructions performed. Adjust the expectations to match the newly generated code. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@260775 91177308-0d34-0410-b5e6-96231b3b80d8
2015-12-07[TSan] Slightly improve check_analyze script.Alexey Samsonov
De-hardcode path to TSan-ified executable: pass it as an input to the scripts. Fix them so that they don't write to the current directory. Remove their invocation from Makefile.old: they are broken there anyway, as check_analyze.sh now matches trunk Clang. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@254936 91177308-0d34-0410-b5e6-96231b3b80d8
2015-11-20[TSan] Fix custom scripts that validate TSan on non-standard buildbot.Alexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@253682 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-02[TSan] Update check_analyze.sh expectations to match trunk Clang output.Alexey Samsonov
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@227877 91177308-0d34-0410-b5e6-96231b3b80d8
2014-05-30tsan: optimize memory access functionsDmitry Vyukov
The optimization is two-fold: First, the algorithm now uses SSE instructions to handle all 4 shadow slots at once. This makes processing faster. Second, if shadow contains the same access, we do not store the event into trace. This increases effective trace size, that is, tsan can remember up to 10x more previous memory accesses. Perofrmance impact: Before: [ OK ] DISABLED_BENCH.Mop8Read (2461 ms) [ OK ] DISABLED_BENCH.Mop8Write (1836 ms) After: [ OK ] DISABLED_BENCH.Mop8Read (1204 ms) [ OK ] DISABLED_BENCH.Mop8Write (976 ms) But this measures only fast-path. On large real applications the speedup is ~20%. Trace size impact: On app1: Memory accesses : 1163265870 Including same : 791312905 (68%) on app2: Memory accesses : 166875345 Including same : 150449689 (90%) 90% of filtered events means that trace size is effectively 10x larger. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@209897 91177308-0d34-0410-b5e6-96231b3b80d8
2012-05-10[tsan] old-dstyle Makefile for tests; two helper scripts that analyze the ↵Kostya Serebryany
assembly code of the hot functions git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@156547 91177308-0d34-0410-b5e6-96231b3b80d8