[PATCH] D83816: Document the -analyze opt flag in the LLVM testing guide (NFC)
Mehdi AMINI via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 14 15:52:06 PDT 2020
mehdi_amini updated this revision to Diff 278010.
mehdi_amini added a comment.
Refer to the new PM convention instead of -analyze
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D83816/new/
https://reviews.llvm.org/D83816
Files:
llvm/docs/TestingGuide.rst
Index: llvm/docs/TestingGuide.rst
===================================================================
--- llvm/docs/TestingGuide.rst
+++ llvm/docs/TestingGuide.rst
@@ -47,6 +47,9 @@
Unit tests are written using `Google Test <https://github.com/google/googletest/blob/master/googletest/docs/primer.md>`_
and `Google Mock <https://github.com/google/googletest/blob/master/googlemock/docs/for_dummies.md>`_
and are located in the ``llvm/unittests`` directory.
+In general unit tests are reserved to test targeting the support library and
+generic data structure, we prefer relying on regression tests for testing
+transformations and analysis on the IR.
Regression tests
----------------
@@ -62,6 +65,17 @@
somewhere underneath this directory. For example, it can be a small
piece of LLVM IR distilled from an actual application or benchmark.
+Testing Analysis
+----------------
+
+Analysis are passes that are inferring properties on some part of the IR and not
+transforming it. They are tested in general using the same infrastructure as the
+regression tests, by creating a separate "Printer" pass to consume the analysis
+result and print it on the standard output in a textual format suitable for
+FileCheck.
+See `llvm/test/Analysis/BranchProbabilityInfo/loop.ll <https://github.com/llvm/llvm-project/blob/master/llvm/test/Analysis/BranchProbabilityInfo/loop.ll>`_
+for an example of such test.
+
``test-suite``
--------------
@@ -184,7 +198,7 @@
----------------------------
The regression test structure is very simple, but does require some
-information to be set. This information is gathered via ``configure``
+information to be set. This information is gathered via ``cmake``
and is written to a file, ``test/lit.site.cfg`` in the build directory.
The ``llvm/test`` Makefile does this work for you.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D83816.278010.patch
Type: text/x-patch
Size: 1832 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200714/287a3bbe/attachment.bin>
More information about the llvm-commits
mailing list