<div dir="ltr"><span style="font-size:12.8px">Hi,</span><div style="font-size:12.8px">Our Stage 2 ASAN bot (<a href="http://green.lab.llvm.org/green/job/clang-stage2-cmake-RgSan/" target="_blank">http://green.lab.llvm.org/<wbr>green/job/clang-stage2-cmake-<wbr>RgSan/</a>) is having trouble with this commit.  </div><div style="font-size:12.8px"><br></div><div style="font-size:12.8px">I believe this issue lies in this line:</div><div style="font-size:12.8px"><span style="font-size:12.8px">Modified: llvm/trunk/utils/lit/lit/llvm/</span><span style="font-size:12.8px"><wbr>config.py</span><br></div><span class="gmail-im" style="font-size:12.8px"><div><span style="font-size:12.8px">+                    self.with_environment('ASAN_</span><span style="font-size:12.8px">OP<wbr>TIONS', 'detect_leaks=1', </span><span style="font-size:12.8px">append_path=<wbr>True</span><span style="font-size:12.8px">)</span><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px"><br></span></div></span><div style="font-size:12.8px"><span style="font-size:12.8px">I am pretty sure the </span><span style="font-size:12.8px">append_path=True is causing the output of the function to append the following to the config.environment dict:</span></div><div style="font-size:12.8px"><span style="font-size:12.8px">'ASAN_OPTIONS': 'detect_leaks=1:.'</span></div><div style="font-size:12.8px"><span style="font-size:12.8px"><br></span></div><div style="font-size:12.8px"><span style="font-size:12.8px">This output causes an error to be thrown when config.py is run because the extra ':.' appended to the 'detect_leaks=1' value causes an error when parsing the key.  Would it be possible to remove the argument '</span><span style="font-size:12.8px">append_path=True' from the function call?  I tried commenting the argument out and re-running the lit command and everything worked again as expected.  Any help you can provide here would be greatly appreciated.</span></div><div style="font-size:12.8px"><span style="font-size:12.8px"><br></span></div><div style="font-size:12.8px"><span style="font-size:12.8px">Respectfully,</span></div><div style="font-size:12.8px"><span style="font-size:12.8px">Mike Edwards</span></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Sep 29, 2017 at 9:51 AM, Francis Ricci via llvm-commits <span dir="ltr"><<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Author: fjricci<br>
Date: Fri Sep 29 09:51:50 2017<br>
New Revision: 314535<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=314535&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-<wbr>project?rev=314535&view=rev</a><br>
Log:<br>
[test] Enable LeakSanitizer on 64-bit Darwin ASan llvm builds<br>
<br>
Summary:<br>
Also disables leak checking on lto tests, due to many leaks reported<br>
in the system's ld64.<br>
<br>
Reviewers: kcc, pcc, bogner, kubamracek<br>
<br>
Subscribers: mehdi_amini, llvm-commits<br>
<br>
Differential Revision: <a href="https://reviews.llvm.org/D37781" rel="noreferrer" target="_blank">https://reviews.llvm.org/<wbr>D37781</a><br>
<br>
Modified:<br>
    llvm/trunk/test/tools/lto/lit.<wbr>local.cfg<br>
    llvm/trunk/utils/lit/lit/llvm/<wbr>config.py<br>
<br>
Modified: llvm/trunk/test/tools/lto/lit.<wbr>local.cfg<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/lto/lit.local.cfg?rev=314535&r1=314534&r2=314535&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-<wbr>project/llvm/trunk/test/tools/<wbr>lto/lit.local.cfg?rev=314535&<wbr>r1=314534&r2=314535&view=diff</a><br>
==============================<wbr>==============================<wbr>==================<br>
--- llvm/trunk/test/tools/lto/lit.<wbr>local.cfg (original)<br>
+++ llvm/trunk/test/tools/lto/lit.<wbr>local.cfg Fri Sep 29 09:51:50 2017<br>
@@ -1,2 +1,6 @@<br>
 if not ('ld64_plugin' in config.available_features and 'X86' in config.root.targets):<br>
-   config.unsupported = True<br>
+    config.unsupported = True<br>
+<br>
+# These tests invoke ld64 from the system, which is not leak-free<br>
+if "Address" in config.llvm_use_sanitizer:<br>
+    config.environment['ASAN_<wbr>OPTIONS'] = 'detect_leaks=0'<br>
<br>
Modified: llvm/trunk/utils/lit/lit/llvm/<wbr>config.py<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/lit/llvm/config.py?rev=314535&r1=314534&r2=314535&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-<wbr>project/llvm/trunk/utils/lit/<wbr>lit/llvm/config.py?rev=314535&<wbr>r1=314534&r2=314535&view=diff</a><br>
==============================<wbr>==============================<wbr>==================<br>
--- llvm/trunk/utils/lit/lit/llvm/<wbr>config.py (original)<br>
+++ llvm/trunk/utils/lit/lit/llvm/<wbr>config.py Fri Sep 29 09:51:50 2017<br>
@@ -75,6 +75,9 @@ class LLVMConfig(object):<br>
             features.add("long_tests")<br>
<br>
         if target_triple:<br>
+            if re.match(r'^x86_64.*-apple', target_triple):<br>
+                if 'address' in sanitizers:<br>
+                    self.with_environment('ASAN_<wbr>OPTIONS', 'detect_leaks=1', append_path=True)<br>
             if re.match(r'^x86_64.*-linux', target_triple):<br>
                 features.add("x86_64-linux")<br>
             if re.match(r'.*-win32$', target_triple):<br>
<br>
<br>
______________________________<wbr>_________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/llvm-commits</a><br>
</blockquote></div><br></div></div>