[llvm-dev] lit conditional compilation/checking?

<Alexander G. Riccio> via llvm-dev llvm-dev at lists.llvm.org
Thu Apr 14 15:06:30 PDT 2016


>
> If the new tests should not be run together with the old tests just
> consider creating a new file. In general mixing tests is of course possible:
>

Maybe I should just create a new file. That said, I'd still like to know
how to mix tests, for future reference.

- Specify a target triple in the RUN: line to force output for a specific
> system, this works regardless of your host system. (However make sure that
> the target you specify is actually available by placing the test in a
> directory with lit.local.cfg set apropriately).
> - You can specify multiple check-prefixes with FileCheck. A typical
> pattern would be:
>
> RUN: ... flags for variant1 | FileCheck %s --check-prefix=CHECK
> --check-prefix=VARIANT1
> RUN: ... flags for variant2 | FileCheck %s --check-prefix=CHECK
> --check-prefix=VARIANT2
>
> CHECK: check this for all variants
> VARIANT1: ...
> VARIANT2: ...
> ...
>

It looks like FileCheck is mainly for assembly/IR level. I'm trying to test
some static-analyzer level things, and I need to skip some test functions.

In general the best way to learn how to write good tests is spending some
> time looking into the existing ones.
>

Slowly, I will. I'm still quite new to the LLVM testing infrastructure.
Sorry!

Sincerely,
Alexander Riccio
--
"Change the world or go home."
about.me/ariccio

<http://about.me/ariccio>
If left to my own devices, I will build more.
⁂

On Wed, Apr 13, 2016 at 7:44 PM, Matthias Braun <mbraun at apple.com> wrote:

> If the new tests should not be run together with the old tests just
> consider creating a new file. In general mixing tests is of course possible:
>
> - Specify a target triple in the RUN: line to force output for a specific
> system, this works regardless of your host system. (However make sure that
> the target you specify is actually available by placing the test in a
> directory with lit.local.cfg set apropriately).
> - You can specify multiple check-prefixes with FileCheck. A typical
> pattern would be:
>
> RUN: ... flags for variant1 | FileCheck %s --check-prefix=CHECK
> --check-prefix=VARIANT1
> RUN: ... flags for variant2 | FileCheck %s --check-prefix=CHECK
> --check-prefix=VARIANT2
>
> CHECK: check this for all variants
> VARIANT1: ...
> VARIANT2: ...
> ...
>
> In general the best way to learn how to write good tests is spending some
> time looking into the existing ones.
>
> - Matthias
>
> On Apr 13, 2016, at 1:55 PM, <Alexander G. Riccio> via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
> How can I platform-conditionally compile/check sections of code with lit?
> Can I rely on preprocessor defines like _WIN32?
>
> Specifically, I'm adding new tests to existing lit tests, but the new
> tests should only be compiled and run on Windows.
>
>
> Sincerely,
> Alexander Riccio
> --
> "Change the world or go home."
> about.me/ariccio
>
> <http://about.me/ariccio>
> If left to my own devices, I will build more.
>> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160414/e6abe951/attachment.html>


More information about the llvm-dev mailing list