<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>