<div dir="ltr"><div>Thanks for verifying this!  I haven't actually been able to run tests successfully under lit yet, even though I think I'm following the instructions.  But thanks for looking to see what works and what doesn't.  I'm just starting with Clang, using CMake/Visual Studio, and one of my main issues so far is not being able to verify via the test-suite that everything is built correctly - unit tests run perfectly, but some of the other tests have unexpected failures (*) and I'm not sure whether that's my setup or just the current state of affairs.</div><div><br></div><div>-- David</div><div><br></div><div>(*) The failures are in clang, and nearly all of those failures involve "could not acquire lock file for module 'Module'" pointing at an "@import Module" which makes me think I've got something wrong with the module system.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 6, 2015 at 1:14 PM, Reid Kleckner <span dir="ltr"><<a href="mailto:rnk@google.com" target="_blank">rnk@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>In general, LLVM_ENABLE_THREADS should default to 'ON' and it is supported.</div><div><br></div><div>I can reproduce your test failures by running IRTests.exe directly, but not when using lit or the 'check' target. I think this failure slipped in silently because of a bug in lit's interaction with gtest. This patch makes the failure visible in the suite:</div><div><br></div><div><div>--- a/utils/lit/lit/formats/googletest.py</div><div>+++ b/utils/lit/lit/formats/googletest.py</div><div>@@ -95,7 +95,7 @@ class GoogleTest(TestFormat):</div><div>             # Handle GTest parametrized and typed tests, whose name includes</div><div>             # some '/'s.</div><div>             testPath, namePrefix = os.path.split(testPath)</div><div>-            testName = os.path.join(namePrefix, testName)</div><div>+            testName = namePrefix + '/' + testName</div><div><br></div><div>         cmd = [testPath, '--gtest_filter=' + testName]</div><div>         if litConfig.useValgrind:</div></div><div><br></div><div>I'm running the suite with this now to see if it uncovers other Windows specific failures. I plan to disable these tests on Windows until we can figure out what's up.</div></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">On Sat, Apr 4, 2015 at 4:06 PM, David Bakin <span dir="ltr"><<a href="mailto:davidbak@gmail.com" target="_blank">davidbak@gmail.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid"><div><div class="h5"><div dir="ltr"><div>I'm not sure what LLVM_ENABLE_THREADS impacts - whether it is LLVM executables themselves or LLVM-generated code - but it seems to be on by default on the Windows CMake build (I'm building LLVM+Clang at trunk head using CMake/Visual Studio 2013 Win64). </div><div><br></div><div>But 3 unit tests in IR, which are compiled only if define LLVM_ENABLE_THREADS is set, fail if LLVM_ENABLE_THEADS=ON: ValueMapTest/{0,1,2}.LocksMutex.</div><div><br></div><div>Should LLVM_ENABLE_THREADS be OFF for the Windows Visual Studio builds?  Or something else?  Should something about this switch be documented at the "Building LLVM With CMake" page, e.g., here <a href="http://llvm.org/docs/CMake.html#llvm-specific-variables" target="_blank">http://llvm.org/docs/CMake.html#llvm-specific-variables</a> ?</div><div><br></div><div>Thanks -- David</div></div>
<br></div></div>_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:LLVMdev@cs.uiuc.edu" target="_blank">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu" target="_blank">http://llvm.cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>
<br></blockquote></div><br></div>
</blockquote></div><br></div>