<div dir="ltr">Hi, Tim,  <br>
</div><div dir="ltr"><br>
</div><div dir="ltr">Thanks for your answer.<br>
</div><div dir="ltr"><br>
</div><div dir="ltr"><br>
</div><div dir="ltr">so you meant the check-all can guarantee my changes to AVR is correct, if it passed without an error?<br>
</div><div dir="ltr"><br>
</div><div dir="ltr">I am interested in LLVM, and intend to learn it by  hacking a simple backend, such as AVR, MSP430.<br>
</div><div dir="ltr"><br>
</div><div dir="ltr">Ben Shi</div><div class="wps_quotion">在 2019年3月22日 01:01,Tim Northover <t.p.northover@gmail.com>写道:<br type="attribution"><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p dir="ltr">Hi Ben, <br>
<br>
On Thu, 21 Mar 2019 at 10:59, Ben Shi via llvm-dev <br>
<<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote: <br>
> Does "make check-all" cover AVR? <br>
<br>
The AVR target is disabled by default; you need to pass <br>
"-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=AVR" to CMake when compiling <br>
LLVM to build it. After that check-all will run some basic tests on <br>
AVR. But none of LLVM's regression tests actually try to execute code <br>
-- they just compile things and inspect the output. <br>
<br>
> I have neither AVR simulator nor real AVR board connected. <br>
<br>
LLVM does have a test-suite in a separate repository that tries to <br>
actually run code. It doesn't attempt to provide a simulator though; <br>
quite the reverse, it expects you to tell it how to execute the code. <br>
You'll also need libraries, headers and binutils (especially a linker) <br>
for the system you intend to run things on. <br>
<br>
On Linux I've had good success with qemu and binfmt_misc to make <br>
execution transparent in the past (this was for AArch64), but I expect <br>
you could rig most environments up somehow. <br>
<br>
Cheers. <br>
<br>
Tim. <br>
</p>
</blockquote></div>