<html><head><style type='text/css'>p { margin: 0; }</style></head><body><div style='font-family: arial,helvetica,sans-serif; font-size: 10pt; color: #000000'><br><hr id="zwchr"><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px; color: rgb(0, 0, 0); font-weight: normal; font-style: normal; text-decoration: none; font-family: Helvetica,Arial,sans-serif; font-size: 12pt;"><b>From: </b>"Alina Sbirlea via llvm-dev" <llvm-dev@lists.llvm.org><br><b>To: </b>"llvm-dev" <llvm-dev@lists.llvm.org><br><b>Sent: </b>Wednesday, February 17, 2016 7:25:17 PM<br><b>Subject: </b>[llvm-dev] RFC: Add bitcode tests to test-suite<br><br><div dir="ltr">Hi all,<div><br></div><div>TL;DR: Add *.bc to test-suite; llc *.bc; run some.</div><div><br></div><div><div>We would like to propose adding bitcode tests to the llvm test-suite.</div></div><div><br></div><div>Recent LLVM bugs [2-4] prompted us to look into upstreaming a subset of the tests the Halide library [1] is running and we'd like the community's feedback on moving forward with this.<br></div><div><br></div><div>Halide uses LLVM and can generate bitcode, but we cannot add C++ tests to test-suite without including the library itself.</div><div>This proposal is also potentially useful for other cases where there is no C++ front-end.</div><div><br></div><div>As a first step we are interested in adding a set of correctness tests, for testing the IR without running the tests. Since these tests are generated, they are not instrumented like the .ll files in trunk, however we believe checking that llc runs without errors is still useful.</div><div>The bitcode files for Halide may also be large, so including them as regression tests is not an option. If the smaller tests are found to be valuable or covering cases no other tests cover, we can instrument them and move them into the llvm trunk further along, but that is not the goal of this proposal.</div><div>In addition, we're not sure whether the format for the tests should be .ll or .bc, we're open to either.</div><div><br></div><div>After this first step, we're interested in upstreaming bitcode tests and also running them.</div><div>We are very interested in tests for multiple architectures, aarch64 in particular, since this is where we have seen things break. This may motivate adding .ll files rather than .bc in order to include the "RUN:" target. </div><div>Where would these tests reside and with what directory structure? (similar to test/CodeGen?)</div><div><br></div><div id="DWT1375">Suggestion on what's the best approach for extending the test-suite framework for this proposal are more than welcome.</div></div></blockquote>We already have architecture-specific tests in the test suite (e.g. SingleSource/UnitTests/Vector/{SSE,Altivec,etc.}, and Clang can deal with IR inputs. I suppose you need to compile some corresponding runtime library, but this does not seem like a big deal either. Mechanically, I don't see this as particularly complicated. I think the real question is: Is this the best way to have a kind of 'halide buildbot' that can inform the LLVM developer community?<br><br> -Hal<br><br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px; color: rgb(0, 0, 0); font-weight: normal; font-style: normal; text-decoration: none; font-family: Helvetica,Arial,sans-serif; font-size: 12pt;"><div dir="ltr"><div></div><div><br></div><div>This is just the high-level overview to start off the discussion, I'm sure there are many more aspects to touch on. Looking forward to your feedback!</div><div><br></div><div><div>Thanks,</div><div>Alina</div><div><br></div><div><span style="font-size: 12.8px;">[1] </span><a href="http://halide-lang.org/" target="_blank" style="font-size: 12.8px;">http://<span class="">halide</span>-lang.org/</a></div><div>[2] Broken: r259800 => Fixed: r260131</div><div>[3] Broken: <span style="font-size: 12.8px;">r260569 => </span>Fixed: <span style="font-size: 12.8px;">r260701</span><br></div><div>[4] <a href="https://llvm.org/bugs/show_bug.cgi?id=26642" target="_blank">https://llvm.org/bugs/show_bug.cgi?id=26642</a></div><div><br></div><div><br></div></div></div>
<br>_______________________________________________<br>LLVM Developers mailing list<br>llvm-dev@lists.llvm.org<br>http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev<br></blockquote><br><br><br>-- <br><div><span name="x"></span>Hal Finkel<br>Assistant Computational Scientist<br>Leadership Computing Facility<br>Argonne National Laboratory<span name="x"></span><br></div></div></body></html>