<div dir="ltr"><div><div><div>I hope this isn't considered spamming the list as I think it's relevant to QEMU and lit testing on ARM-64 platforms. After a few people contacted me for the instructions to setup Ubuntu aarch64 on QEMU I wrote them up here:<br>
<br><a href="http://rzycki.blogspot.com/2014/08/using-qemu-to-run-ubuntu-arm-64-bit.html">http://rzycki.blogspot.com/2014/08/using-qemu-to-run-ubuntu-arm-64-bit.html</a><br></div><br></div>Thanks,<br></div>-Brian<br></div>
<div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Aug 25, 2014 at 10:57 AM, Brian M. Rzycki <span dir="ltr"><<a href="mailto:brzycki@gmail.com" target="_blank">brzycki@gmail.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><div><div>Hi Jon,<br><br></div>I'm doing work in a similar vein as yours at the moment. We have several arm platforms (hardware and qemu) running either Linux or Android and want to run test-suite on them using x86->arm/aarch64 cross compilers dispatched via LNT. <br>


<br></div>I've had some success bypassing lit and LNT by modifying RunSafely.sh within test-suite. It's likely this won't completely solve your problem but I think it would be a good idea to find the right path forward. I posted the patch I made in another thread on the list, titled under "test-suite RunSafely.sh remote execution with test copy". I'm using a variant on the method you outlined talking with Dan Albert to accomplish it.  Like your code it's a bit of a hack, but I've gotten it to work provided the remote host has ssh and scp. I decided against the adb path for simplicity and consistency in the code modifications. Were a solution provided that had both ssh/scp and adb I'd be thrilled.<br>

<br></div><div>Finally, I've done some work on getting Ubuntu 14.04LTS aarch64 running on Qemu but have not yet posted the instructions online. If you (or anyone) is interested please let me know and I'll make it a priority to document the steps I used.<span class="HOEnZb"><font color="#888888"><br>

<br></font></span></div><span class="HOEnZb"><font color="#888888">-Brian
</font></span></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Aug 21, 2014 at 7:42 PM, Jonathan Roelofs <span dir="ltr"><<a href="mailto:jonathan@codesourcery.com" target="_blank">jonathan@codesourcery.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Dan/Daniel/Eric,<br>
<br>
I'm testing a bare-metal ARM toolchain, and I've hacked up my local copy of lit to get it to run libcxx tests on qemu. I wanted to pick your collective brains to see if there was a better way of doing this.<br>
<br>
What I have implemented is here (don't take this as a formal review request, we can do that later once we figure out the best direction to go):<br>
lit part:    <a href="http://reviews.llvm.org/D5014" target="_blank">http://reviews.llvm.org/D5014</a><br>
libcxx part: <a href="http://reviews.llvm.org/D5015" target="_blank">http://reviews.llvm.org/D5015</a><br>
<br>
<br>
<br>
Talking with Dan Albert earlier, he pointed out an existing review (<a href="http://reviews.llvm.org/D4594" target="_blank">http://reviews.llvm.org/D4594</a><u></u>) where he has implemented something vaguely similar for Android. Looking at that, I've realized that maybe it makes sense to make an interface for the different actions of:<br>


  *  Compiling the test<br>
     o  Maybe the compiler isn't on the machine that runs the test?<br>
     o  Maybe the compile jobs could be distributed to different machines?<br>
  *  Running the test<br>
     o  Perhaps the test needs to be sent out to a remote device?<br>
     o  Perhaps the test can be scheduled on more than one remote device?<br>
<br>
Then that interface could be implemented in a couple of generic ways:<br>
  *  scp & ssh for remote hosts (or QEMU with an OS image)<br>
  *  Wrapper around Android's adb<br>
  *  Thin wrapper around "run it in this machine's shell" (what we currently have)<br>
<br>
What are your thoughts on this? Is this worth pursuing? What other use-cases can we support by structuring LIT this way? I don't yet have a concrete proposal for what this would look like, but I can throw one together if there's interest.<br>


<br>
<br>
Cheers,<br>
<br>
Jon<span><font color="#888888"><br>
<br>
-- <br>
Jon Roelofs<br>
<a href="mailto:jonathan@codesourcery.com" target="_blank">jonathan@codesourcery.com</a><br>
CodeSourcery / Mentor Embedded<br>
______________________________<u></u>_________________<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/<u></u>mailman/listinfo/llvmdev</a><br>
</font></span></blockquote></div><br></div>
</div></div></blockquote></div><br></div>