<div class="socmaildefaultfont" dir="ltr" style="font-family:Arial, Helvetica, sans-serif;font-size:9pt" ><div dir="ltr" >Hi Kostya,</div>
<div dir="ltr" >I'm sorry, I don't know the background here - it will take me a bit to come up to speed.</div>
<div dir="ltr" >But, if this functionality isn't used on PPC why is it introducing a failure?</div>
<div dir="ltr" > </div>
<div dir="ltr" >Kit Barton, Ph.D.<br>LLVM Development on POWER<br>IBM Toronto Lab, D2/929/8200/MKM<br>8200 Warden Ave, Markham, L6G 1C7<br>(905) 413-3452<br>kbarton@ca.ibm.com<br> </div>
<div dir="ltr" > </div>
<div dir="ltr" > </div>
<blockquote data-history-content-modified="1" dir="ltr" style="border-left:solid #aaaaaa 2px; margin-left:5px; padding-left:5px; direction:ltr; margin-right:0px" >----- Original message -----<br>From: Kostya Serebryany <kcc@google.com><br>To: Eric Christopher <echristo@gmail.com><br>Cc: Bill Seurer <seurer@linux.vnet.ibm.com>, Eric Christopher <echristo@google.com>, LLVM Commits <llvm-commits@lists.llvm.org>, Kit Barton/Toronto/IBM@IBMCA<br>Subject: Re: [llvm] r292862 - [sanitizer-coverage] emit __sanitizer_cov_trace_pc_guard w/o a preceding 'if' by default. Update the docs, also add deprecation notes around other parts of sanitizer coverage<br>Date: Tue, Jan 24, 2017 4:23 PM<br> 
<div dir="ltr" > 
<div> </div>
<div> 
<div>On Tue, Jan 24, 2017 at 1:17 PM, Eric Christopher <span dir="ltr" ><<a href="mailto:echristo@gmail.com" target="_blank" >echristo@gmail.com</a>></span> wrote:

<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" ><div dir="ltr" > 
<div><div dir="ltr" ><span>On Tue, Jan 24, 2017 at 11:49 AM Kostya Serebryany <<a href="mailto:kcc@google.com" target="_blank" >kcc@google.com</a>> wrote:</span></div>
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" ><div dir="ltr" ><div><div><span>On Tue, Jan 24, 2017 at 11:45 AM, Eric Christopher <span dir="ltr" ><<a href="mailto:echristo@gmail.com" target="_blank" >echristo@gmail.com</a>></span> wrote:</span>
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" ><div dir="ltr" ><span>This seems problematic in general - we have a bot that is failing due to a particular test. Is this patch necessary for correctness somewhere else?</span></div></blockquote>
<div> </div></div></div></div>
<div dir="ltr" ><div><div><div><span>Correctness -- no. Performance -- yes, and in some cases very significant.</span></div></div></div></div></blockquote>
<div> </div>
<div>OK. Thanks. </div>
<div><span> </span></div>
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" ><div dir="ltr" ><div><div><div><span> </span></div>
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" ><div dir="ltr" ><span>Can it be reverted until we can figure out what's going on?</span></div></blockquote>
<div> </div></div></div></div>
<div dir="ltr" ><div><div><div><span>Sure we can revert it, but who is going to analyze the problem and how soon? </span></div></div></div></div></blockquote>
<div> </div>
<div>I'm hoping someone at IBM can take a look at it. I've got limited ability to debug it myself at the moment.</div>
<div> </div>
<div>Kit: Would you mind terribly?</div>
<div>Kostya: It might be nice to revert in the mean time if you don't mind?</div></div></div></blockquote>
<div> </div>
<div>I do mind, sorry. </div>
<div>Again, this functionality is not used by anyone on PPC (afaict) but is important for libFuzzer users on x86 side. </div>
<div> </div>
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" ><div dir="ltr" ><div><div> </div>
<div>Thanks!</div>
<div> </div>
<div><span><font color="#888888" >-eric</font></span></div>
<div><div><div> </div>
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" ><div dir="ltr" ><div><div><div>Note that the functionality tested in this test is not the core asan, but the coverage instrumentation used by libFuzzer, </div>
<div>and afaict there are no users of libFuzzer on PPC, so we can just disable the test on PPC and no users will be harmed. </div></div></div></div>
<div dir="ltr" ><div><div><div> </div>
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" ><div dir="ltr" ><div> </div>
<div><span><font color="#888888" >-eric</font></span></div></div>
<div><div> 
<div><div dir="ltr" >On Tue, Jan 24, 2017 at 11:29 AM Kostya Serebryany via llvm-commits <<a href="mailto:llvm-commits@lists.llvm.org" target="_blank" >llvm-commits@lists.llvm.org</a>> wrote:</div>
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" ><div dir="ltr" >Hi Bill, 
<div> </div>
<div>thanks for the report. </div>
<div>Unfortunately, I don't have anyone working on the PPC side at the moment and the test passes on x86. </div>
<div>So, the only thing I can propose now is to disable this test on PPC. </div>
<div>(Maybe it's not that bad, I was going to kill at least some of the related code this year). </div>
<div> </div>
<div>--kcc </div></div>
<div> 
<div>On Tue, Jan 24, 2017 at 8:44 AM, Bill Seurer <span dir="ltr" ><<a href="mailto:seurer@linux.vnet.ibm.com" target="_blank" >seurer@linux.vnet.ibm.com</a>></span> wrote:

<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" >This broke the powerpc sanitizers.<br><br>updatellvm 292861<br>ninja<br>ninja check-asan<br>Testing Time: 29.65s<br>  Expected Passes    : 457<br>  Expected Failures  : 1<br>  Unsupported Tests  : 157<br><br>updatellvm 292862<br>ninja<br>ninja check-asan<br><br>FAIL: AddressSanitizer-powerpc64le-<wbr>linux :: TestCases/Posix/coverage-<wbr>direct.cc (528 of 615)<br>******************** TEST 'AddressSanitizer-powerpc64le-<wbr>linux :: TestCases/Posix/coverage-<wbr>direct.cc' FAILED ********************<br>Script:<br>--<br>/home/seurer/llvm/build/llvm-<wbr>test2/./bin/clang --driver-mode=g++ -fsanitize=address -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer -fno-optimize-sibling-calls -gline-tables-only -m64 -fsanitize-coverage=func -DSHARED /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/test/<wbr>asan/TestCases/Posix/coverage-<wbr>direct.cc -shared -o /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/lib$(<wbr>basename /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp).<wbr>dynamic.so -fPIC<br>/home/seurer/llvm/build/llvm-<wbr>test2/./bin/clang --driver-mode=g++ -fsanitize=address -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer -fno-optimize-sibling-calls -gline-tables-only -m64 -fsanitize-coverage=func /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/test/<wbr>asan/TestCases/Posix/coverage-<wbr>direct.cc -ldl -o /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp<br>rm -rf /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct<br>mkdir -p /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal<br>env ASAN_OPTIONS=coverage=1:<wbr>coverage_direct=0:coverage_<wbr>dir=/home/seurer/llvm/build/<wbr>llvm-test2/projects/compiler-<wbr>rt/test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal:<wbr>verbosity=1<br>/home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/lib$(<wbr>basename /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp).<wbr>dynamic.so<br>/usr/bin/python2.7 /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py print /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/*.<wbr>sancov >/home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/out.txt<br>mkdir -p /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/direct<br>env ASAN_OPTIONS=coverage=1:<wbr>coverage_direct=1:coverage_<wbr>dir=/home/seurer/llvm/build/<wbr>llvm-test2/projects/compiler-<wbr>rt/test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/direct:<wbr>verbosity=1<br>/home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/lib$(<wbr>basename /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp).<wbr>dynamic.so<br>cd /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/direct<br>/usr/bin/python2.7 /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py rawunpack *.sancov.raw<br>/usr/bin/python2.7 /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py print *.sancov >out.txt<br>cd ../..<br>diff -u coverage-direct/normal/out.txt coverage-direct/direct/out.txt<br>/home/seurer/llvm/build/llvm-<wbr>test2/./bin/clang --driver-mode=g++ -fsanitize=address -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer -fno-optimize-sibling-calls -gline-tables-only -m64 -fsanitize-coverage=bb -DSHARED /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/test/<wbr>asan/TestCases/Posix/coverage-<wbr>direct.cc -shared -o /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/lib$(<wbr>basename /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp).<wbr>dynamic.so -fPIC<br>/home/seurer/llvm/build/llvm-<wbr>test2/./bin/clang --driver-mode=g++ -fsanitize=address -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer -fno-optimize-sibling-calls -gline-tables-only -m64 -fsanitize-coverage=bb -DSO_DIR=\"/home/seurer/llvm/<wbr>build/llvm-test2/projects/<wbr>compiler-rt/test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output\" /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/test/<wbr>asan/TestCases/Posix/coverage-<wbr>direct.cc -ldl -o /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp<br>rm -rf /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct<br>mkdir -p /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal<br>env ASAN_OPTIONS=coverage=1:<wbr>coverage_direct=0:coverage_<wbr>dir=/home/seurer/llvm/build/<wbr>llvm-test2/projects/compiler-<wbr>rt/test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal:<wbr>verbosity=1<br>/home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/lib$(<wbr>basename /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp).<wbr>dynamic.so<br>/usr/bin/python2.7 /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py print /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/*.<wbr>sancov >/home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/out.txt<br>mkdir -p /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/direct<br>env ASAN_OPTIONS=coverage=1:<wbr>coverage_direct=1:coverage_<wbr>dir=/home/seurer/llvm/build/<wbr>llvm-test2/projects/compiler-<wbr>rt/test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/direct:<wbr>verbosity=1<br>/home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/lib$(<wbr>basename /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp).<wbr>dynamic.so<br>cd /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/direct<br>/usr/bin/python2.7 /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py rawunpack *.sancov.raw<br>/usr/bin/python2.7 /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py print *.sancov >out.txt<br>cd ../..<br>diff -u coverage-direct/normal/out.txt coverage-direct/direct/out.txt<br>/home/seurer/llvm/build/llvm-<wbr>test2/./bin/clang --driver-mode=g++ -fsanitize=address -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer -fno-optimize-sibling-calls -gline-tables-only -m64 -fsanitize-coverage=edge -DSHARED /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/test/<wbr>asan/TestCases/Posix/coverage-<wbr>direct.cc -shared -o /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/lib$(<wbr>basename /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp).<wbr>dynamic.so -fPIC<br>/home/seurer/llvm/build/llvm-<wbr>test2/./bin/clang --driver-mode=g++ -fsanitize=address -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer -fno-optimize-sibling-calls -gline-tables-only -m64 -fsanitize-coverage=edge -DSO_DIR=\"/home/seurer/llvm/<wbr>build/llvm-test2/projects/<wbr>compiler-rt/test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output\" /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/test/<wbr>asan/TestCases/Posix/coverage-<wbr>direct.cc -ldl -o /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp<br>rm -rf /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct<br>mkdir -p /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal<br>env ASAN_OPTIONS=coverage=1:<wbr>coverage_direct=0:coverage_<wbr>dir=/home/seurer/llvm/build/<wbr>llvm-test2/projects/compiler-<wbr>rt/test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal:<wbr>verbosity=1<br>/home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/lib$(<wbr>basename /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp).<wbr>dynamic.so<br>/usr/bin/python2.7 /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py print /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/*.<wbr>sancov >/home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/out.txt<br>mkdir -p /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/direct<br>env ASAN_OPTIONS=coverage=1:<wbr>coverage_direct=1:coverage_<wbr>dir=/home/seurer/llvm/build/<wbr>llvm-test2/projects/compiler-<wbr>rt/test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/direct:<wbr>verbosity=1<br>/home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/lib$(<wbr>basename /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct.cc.tmp).<wbr>dynamic.so<br>cd /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/direct<br>/usr/bin/python2.7 /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py rawunpack *.sancov.raw<br>/usr/bin/python2.7 /home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py print *.sancov >out.txt<br>cd ../..<br>diff -u coverage-direct/normal/out.txt coverage-direct/direct/out.txt<br>--<br>Exit Code: 1<br><br>Command Output (stdout):<br>--<br>bar<br>bar<br>bar<br>bar<br>--- coverage-direct/normal/out.<wbr>txt      2017-01-24 10:20:41.258917000 -0600<br>+++ coverage-direct/direct/out.<wbr>txt      2017-01-24 10:20:41.638917000 -0600<br>@@ -1 +1,2 @@<br> 0x10128bb0<br>+0x10128bb0<br><br>--<br>Command Output (stderr):<br>--<br>==18701==AddressSanitizer: failed to intercept '__isoc99_printf'<br>==18701==AddressSanitizer: failed to intercept '__isoc99_sprintf'<br>==18701==AddressSanitizer: failed to intercept '__isoc99_snprintf'<br>==18701==AddressSanitizer: failed to intercept '__isoc99_fprintf'<br>==18701==AddressSanitizer: failed to intercept '__isoc99_vprintf'<br>==18701==AddressSanitizer: failed to intercept '__isoc99_vsprintf'<br>==18701==AddressSanitizer: failed to intercept '__isoc99_vsnprintf'<br>==18701==AddressSanitizer: failed to intercept '__isoc99_vfprintf'<br>==18701==AddressSanitizer: libc interceptors initialized<br>|| `[0x0a0000000000, 0x3fffffffffff]` || HighMem    ||<br>|| `[0x034000000000, 0x09ffffffffff]` || HighShadow ||<br>|| `[0x024000000000, 0x033fffffffff]` || ShadowGap  ||<br>|| `[0x020000000000, 0x023fffffffff]` || LowShadow  ||<br>|| `[0x000000000000, 0x01ffffffffff]` || LowMem     ||<br>MemToShadow(shadow): 0x024000000000 0x0247ffffffff 0x026800000000 0x033fffffffff<br>redzone=16<br>max_redzone=2048<br>quarantine_size_mb=256M<br>thread_local_quarantine_size_<wbr>kb=1024K<br>malloc_context_size=30<br>SHADOW_SCALE: 3<br>SHADOW_GRANULARITY: 8<br>SHADOW_OFFSET: 0x20000000000<br>==18701==Installed the sigaction for signal 11<br>==18701==Installed the sigaction for signal 7<br>==18701==Installed the sigaction for signal 8<br>==18701==T0: stack [0x3fffdd8c0000,<wbr>0x3fffde0c0000) size 0x800000; local=0x3fffde0ba450<br>==18701==AddressSanitizer Init done<br>PID: 18701<br>==18701== CovDump: /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/<wbr>coverage-direct.cc.tmp.18701.<wbr>sancov: 1 PCs written<br>==18701== CovDump: /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/<wbr>libcoverage-<a href="http://direct.cc.tmp.dynamic.so" target="_blank" >direct.cc.tmp.<wbr>dynamic.so</a>.18701.sancov: 1 PCs written<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: read 1 64-bit PCs from /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/<wbr>coverage-direct.cc.tmp.18701.<wbr>sancov<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: read 1 64-bit PCs from /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/<wbr>libcoverage-<a href="http://direct.cc.tmp.dynamic.so" target="_blank" >direct.cc.tmp.<wbr>dynamic.so</a>.18701.sancov<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: 2 files merged; 2 PCs total<br>==19909==AddressSanitizer: failed to intercept '__isoc99_printf'<br>==19909==AddressSanitizer: failed to intercept '__isoc99_sprintf'<br>==19909==AddressSanitizer: failed to intercept '__isoc99_snprintf'<br>==19909==AddressSanitizer: failed to intercept '__isoc99_fprintf'<br>==19909==AddressSanitizer: failed to intercept '__isoc99_vprintf'<br>==19909==AddressSanitizer: failed to intercept '__isoc99_vsprintf'<br>==19909==AddressSanitizer: failed to intercept '__isoc99_vsnprintf'<br>==19909==AddressSanitizer: failed to intercept '__isoc99_vfprintf'<br>==19909==AddressSanitizer: libc interceptors initialized<br>|| `[0x0a0000000000, 0x3fffffffffff]` || HighMem    ||<br>|| `[0x034000000000, 0x09ffffffffff]` || HighShadow ||<br>|| `[0x024000000000, 0x033fffffffff]` || ShadowGap  ||<br>|| `[0x020000000000, 0x023fffffffff]` || LowShadow  ||<br>|| `[0x000000000000, 0x01ffffffffff]` || LowMem     ||<br>MemToShadow(shadow): 0x024000000000 0x0247ffffffff 0x026800000000 0x033fffffffff<br>redzone=16<br>max_redzone=2048<br>quarantine_size_mb=256M<br>thread_local_quarantine_size_<wbr>kb=1024K<br>malloc_context_size=30<br>SHADOW_SCALE: 3<br>SHADOW_GRANULARITY: 8<br>SHADOW_OFFSET: 0x20000000000<br>==19909==Installed the sigaction for signal 11<br>==19909==Installed the sigaction for signal 7<br>==19909==Installed the sigaction for signal 8<br>==19909==T0: stack [0x3fffe86a0000,<wbr>0x3fffe8ea0000) size 0x800000; local=0x3fffe8e91da0<br>==19909==AddressSanitizer Init done<br>PID: 19909<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: reading map 19909.sancov.map<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: unpacking 19909.sancov.raw<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: writing 1 PCs to coverage-direct.cc.tmp.19909.<wbr>sancov<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: writing 1 PCs to libcoverage-direct.cc.tmp.<wbr>dynamic.so.19909.sancov<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: read 1 64-bit PCs from coverage-direct.cc.tmp.19909.<wbr>sancov<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: read 1 64-bit PCs from libcoverage-direct.cc.tmp.<wbr>dynamic.so.19909.sancov<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: 2 files merged; 2 PCs total<br>==27096==AddressSanitizer: failed to intercept '__isoc99_printf'<br>==27096==AddressSanitizer: failed to intercept '__isoc99_sprintf'<br>==27096==AddressSanitizer: failed to intercept '__isoc99_snprintf'<br>==27096==AddressSanitizer: failed to intercept '__isoc99_fprintf'<br>==27096==AddressSanitizer: failed to intercept '__isoc99_vprintf'<br>==27096==AddressSanitizer: failed to intercept '__isoc99_vsprintf'<br>==27096==AddressSanitizer: failed to intercept '__isoc99_vsnprintf'<br>==27096==AddressSanitizer: failed to intercept '__isoc99_vfprintf'<br>==27096==AddressSanitizer: libc interceptors initialized<br>|| `[0x0a0000000000, 0x3fffffffffff]` || HighMem    ||<br>|| `[0x034000000000, 0x09ffffffffff]` || HighShadow ||<br>|| `[0x024000000000, 0x033fffffffff]` || ShadowGap  ||<br>|| `[0x020000000000, 0x023fffffffff]` || LowShadow  ||<br>|| `[0x000000000000, 0x01ffffffffff]` || LowMem     ||<br>MemToShadow(shadow): 0x024000000000 0x0247ffffffff 0x026800000000 0x033fffffffff<br>redzone=16<br>max_redzone=2048<br>quarantine_size_mb=256M<br>thread_local_quarantine_size_<wbr>kb=1024K<br>malloc_context_size=30<br>SHADOW_SCALE: 3<br>SHADOW_GRANULARITY: 8<br>SHADOW_OFFSET: 0x20000000000<br>==27096==Installed the sigaction for signal 11<br>==27096==Installed the sigaction for signal 7<br>==27096==Installed the sigaction for signal 8<br>==27096==T0: stack [0x3ffffe510000,<wbr>0x3ffffed10000) size 0x800000; local=0x3ffffed04100<br>==27096==AddressSanitizer Init done<br>PID: 27096<br>==27096== CovDump: /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/<wbr>coverage-direct.cc.tmp.27096.<wbr>sancov: 1 PCs written<br>==27096== CovDump: /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/<wbr>libcoverage-<a href="http://direct.cc.tmp.dynamic.so" target="_blank" >direct.cc.tmp.<wbr>dynamic.so</a>.27096.sancov: 1 PCs written<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: read 1 64-bit PCs from /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/<wbr>coverage-direct.cc.tmp.27096.<wbr>sancov<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: read 1 64-bit PCs from /home/seurer/llvm/build/llvm-<wbr>test2/projects/compiler-rt/<wbr>test/asan/<wbr>POWERPC64LELinuxConfig/<wbr>TestCases/Posix/Output/<wbr>coverage-direct/normal/<wbr>libcoverage-<a href="http://direct.cc.tmp.dynamic.so" target="_blank" >direct.cc.tmp.<wbr>dynamic.so</a>.27096.sancov<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: 2 files merged; 1 PCs total<br>==27521==AddressSanitizer: failed to intercept '__isoc99_printf'<br>==27521==AddressSanitizer: failed to intercept '__isoc99_sprintf'<br>==27521==AddressSanitizer: failed to intercept '__isoc99_snprintf'<br>==27521==AddressSanitizer: failed to intercept '__isoc99_fprintf'<br>==27521==AddressSanitizer: failed to intercept '__isoc99_vprintf'<br>==27521==AddressSanitizer: failed to intercept '__isoc99_vsprintf'<br>==27521==AddressSanitizer: failed to intercept '__isoc99_vsnprintf'<br>==27521==AddressSanitizer: failed to intercept '__isoc99_vfprintf'<br>==27521==AddressSanitizer: libc interceptors initialized<br>|| `[0x0a0000000000, 0x3fffffffffff]` || HighMem    ||<br>|| `[0x034000000000, 0x09ffffffffff]` || HighShadow ||<br>|| `[0x024000000000, 0x033fffffffff]` || ShadowGap  ||<br>|| `[0x020000000000, 0x023fffffffff]` || LowShadow  ||<br>|| `[0x000000000000, 0x01ffffffffff]` || LowMem     ||<br>MemToShadow(shadow): 0x024000000000 0x0247ffffffff 0x026800000000 0x033fffffffff<br>redzone=16<br>max_redzone=2048<br>quarantine_size_mb=256M<br>thread_local_quarantine_size_<wbr>kb=1024K<br>malloc_context_size=30<br>SHADOW_SCALE: 3<br>SHADOW_GRANULARITY: 8<br>SHADOW_OFFSET: 0x20000000000<br>==27521==Installed the sigaction for signal 11<br>==27521==Installed the sigaction for signal 7<br>==27521==Installed the sigaction for signal 8<br>==27521==T0: stack [0x3fffcdaf0000,<wbr>0x3fffce2f0000) size 0x800000; local=0x3fffce2e5b00<br>==27521==AddressSanitizer Init done<br>PID: 27521<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: reading map 27521.sancov.map<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: unpacking 27521.sancov.raw<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: writing 2 PCs to coverage-direct.cc.tmp.27521.<wbr>sancov<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: read 2 64-bit PCs from coverage-direct.cc.tmp.27521.<wbr>sancov<br>/home/seurer/llvm/llvm-test2/<wbr>projects/compiler-rt/lib/<wbr>sanitizer_common/scripts/<wbr>sancov.py: 1 file merged; 2 PCs total<br><br>--<br><br>********************
<div><div><br><br><br><br>On 01/23/2017 06:57 PM, Kostya Serebryany via llvm-commits wrote:
<blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" >Author: kcc<br>Date: Mon Jan 23 18:57:31 2017<br>New Revision: 292862<br><br>URL: <a href="http://llvm.org/viewvc/llvm" target="_blank" >http://llvm.org/viewvc/llvm</a>-<wbr>project?rev=292862&view=rev<br>Log:<br>[sanitizer-coverage] emit __sanitizer_cov_trace_pc_guard w/o a preceding 'if' by default. Update the docs, also add deprecation notes around other parts of sanitizer coverage<br><br>Modified:<br>    llvm/trunk/lib/Transforms/<wbr>Instrumentation/<wbr>SanitizerCoverage.cpp<br>    llvm/trunk/test/<wbr>Instrumentation/<wbr>SanitizerCoverage/coverage.ll<br>    llvm/trunk/test/<wbr>Instrumentation/<wbr>SanitizerCoverage/coverage2-<wbr>dbg.ll<br><br>Modified: llvm/trunk/lib/Transforms/<wbr>Instrumentation/<wbr>SanitizerCoverage.cpp<br>URL: <a href="http://llvm.org/viewvc/llvm" target="_blank" >http://llvm.org/viewvc/llvm</a>-<wbr>project/llvm/trunk/lib/<wbr>Transforms/Instrumentation/<wbr>SanitizerCoverage.cpp?rev=<wbr>292862&r1=292861&r2=292862&<wbr>view=diff<br>==============================<wbr>==============================<wbr>==================<br>--- llvm/trunk/lib/Transforms/<wbr>Instrumentation/<wbr>SanitizerCoverage.cpp (original)<br>+++ llvm/trunk/lib/Transforms/<wbr>Instrumentation/<wbr>SanitizerCoverage.cpp Mon Jan 23 18:57:31 2017<br>@@ -95,7 +95,7 @@ static cl::opt<unsigned> ClCoverageBlock<br>     "sanitizer-coverage-block-<wbr>threshold",<br>     cl::desc("Use a callback with a guard check inside it if there are"<br>              " more than this number of blocks."),<br>-    cl::Hidden, cl::init(500));<br>+    cl::Hidden, cl::init(0));<br><br> static cl::opt<bool><br>     ClExperimentalTracing("<wbr>sanitizer-coverage-<wbr>experimental-tracing",<br><br>Modified: llvm/trunk/test/<wbr>Instrumentation/<wbr>SanitizerCoverage/coverage.ll<br>URL: <a href="http://llvm.org/viewvc/llvm" target="_blank" >http://llvm.org/viewvc/llvm</a>-<wbr>project/llvm/trunk/test/<wbr>Instrumentation/<wbr>SanitizerCoverage/coverage.ll?<wbr>rev=292862&r1=292861&r2=<wbr>292862&view=diff<br>==============================<wbr>==============================<wbr>==================<br>--- llvm/trunk/test/<wbr>Instrumentation/<wbr>SanitizerCoverage/coverage.ll (original)<br>+++ llvm/trunk/test/<wbr>Instrumentation/<wbr>SanitizerCoverage/coverage.ll Mon Jan 23 18:57:31 2017<br>@@ -1,6 +1,6 @@<br> ; RUN: opt < %s -sancov -sanitizer-coverage-level=0 -S | FileCheck %s --check-prefix=CHECK0<br> ; RUN: opt < %s -sancov -sanitizer-coverage-level=1 -S | FileCheck %s --check-prefix=CHECK1<br>-; RUN: opt < %s -sancov -sanitizer-coverage-level=2 -S | FileCheck %s --check-prefix=CHECK2<br>+; RUN: opt < %s -sancov -sanitizer-coverage-level=2 -S | FileCheck %s --check-prefix=CHECK_WITH_<wbr>CHECK<br> ; RUN: opt < %s -sancov -sanitizer-coverage-level=2 -sanitizer-coverage-block-<wbr>threshold=10 -S | FileCheck %s --check-prefix=CHECK2<br> ; RUN: opt < %s -sancov -sanitizer-coverage-level=2 -sanitizer-coverage-block-<wbr>threshold=0  -S | FileCheck %s --check-prefix=CHECK_WITH_<wbr>CHECK<br> ; RUN: opt < %s -sancov -sanitizer-coverage-level=2 -sanitizer-coverage-block-<wbr>threshold=1  -S | FileCheck %s --check-prefix=CHECK_WITH_<wbr>CHECK<br><br>Modified: llvm/trunk/test/<wbr>Instrumentation/<wbr>SanitizerCoverage/coverage2-<wbr>dbg.ll<br>URL: <a href="http://llvm.org/viewvc/llvm" target="_blank" >http://llvm.org/viewvc/llvm</a>-<wbr>project/llvm/trunk/test/<wbr>Instrumentation/<wbr>SanitizerCoverage/coverage2-<wbr>dbg.ll?rev=292862&r1=292861&<wbr>r2=292862&view=diff<br>==============================<wbr>==============================<wbr>==================<br>--- llvm/trunk/test/<wbr>Instrumentation/<wbr>SanitizerCoverage/coverage2-<wbr>dbg.ll (original)<br>+++ llvm/trunk/test/<wbr>Instrumentation/<wbr>SanitizerCoverage/coverage2-<wbr>dbg.ll Mon Jan 23 18:57:31 2017<br>@@ -17,8 +17,8 @@ target triple = "x86_64-unknown-linux-gn<br> ; Check that __sanitizer_cov call has !dgb pointing to the beginning<br> ; of appropriate basic blocks.<br> ; CHECK-LABEL:_Z3fooPi<br>-; CHECK: call void @__sanitizer_cov(i32*{{.*}}), !dbg [[A:!.*]]<br>-; CHECK: call void @__sanitizer_cov(i32*{{.*}}), !dbg [[B:!.*]]<br>+; CHECK: call void @__sanitizer_cov{{.*}}(i32*{{.<wbr>*}}), !dbg [[A:!.*]]<br>+; CHECK: call void @__sanitizer_cov{{.*}}(i32*{{.<wbr>*}}), !dbg [[B:!.*]]<br> ; CHECK: ret void<br> ; CHECK: [[A]] = !DILocation(line: 1, scope: !{{.*}})<br> ; CHECK: [[B]] = !DILocation(line: 3, column: 5, scope: !{{.*}})<br><br><br>______________________________<wbr>_________________<br>llvm-commits mailing list<br><a href="mailto:llvm-commits@lists.llvm.org" target="_blank" >llvm-commits@lists.llvm.org</a><br><a href="http://lists.llvm.org/cgi-bin" target="_blank" >http://lists.llvm.org/cgi-bin</a>/<wbr>mailman/listinfo/llvm-commits<br> </blockquote><br> </div></div><span><font color="#888888" > --<br><br>-Bill Seurer</font></span><br> </blockquote></div></div>______________________________<wbr>_________________<br>llvm-commits mailing list<br><a href="mailto:llvm-commits@lists.llvm.org" target="_blank" >llvm-commits@lists.llvm.org</a><br><a href="http://lists.llvm.org/cgi-bin" target="_blank" >http://lists.llvm.org/cgi-bin</a>/<wbr>mailman/listinfo/llvm-commits</blockquote></div></div></div></blockquote></div></div></div></blockquote></div></div></div></div></blockquote></div></div></div></blockquote>
<div dir="ltr" > </div></div><BR>