History log of /art/tools/checker/file_format/checker/parser.py
Revision Date Author Comments
92706a8a541521d586736287f0dc6b7f338acff0 30-Nov-2017 Aart Bik <ajcbik@google.com> Introduced CHECK-START-{x,y,z} syntax.

Rationale:
Many of our tests repeat CHECK-START-x with following
checker lines for various architectures if some, but
not all architectures match the checker lines. This
is tedious and error-prone. No more of that nonsense!
This CL introduces a syntax that allows specifying
subsets of architectures with a single block!

Bug: 62352954

Test: test-art-host test-art-target
Change-Id: Ife18b3ef9eaa2540166ace045c165ba252b31c6b
5cc343d7239f9b1faf3ddf592cd5172a1371d276 08-Oct-2015 David Brazdil <dbrazdil@google.com> ART: Checker tests for --debuggable

Checker was disabled for --debuggable because the code was not compiled
with Optimizing. Now that it is, we might want to write Checker tests
only for this mode. With this patch, CHECK-START(-ARCH)-DEBUGGABLE
tests will only be invoked on output of debuggable compilation.
Existing CHECK-START(-ARCH) tests will not be invoked.

Change-Id: I00c864f77b038af913d0d22ba7cf5655687f7c7c
b34c35ee8fe1516118d1d172a5e05b263ccbd93d 20-Aug-2015 David Brazdil <dbrazdil@google.com> ART: Expression evaluation in Checker

It can be useful for tests to evaluate small `assert`-like expressions.
This patch adds such support to Checker, with a new CHECK-EVAL line.
See README file for more details.

Change-Id: I184f7c8e8b53f7e93cfb08fcf9630b4724fa5412
5e2c8d323fbab4db8a71041ff94b6baf3953bca9 06-Aug-2015 Alexandre Rames <alexandre.rames@linaro.org> Introduce arch-specific checker tests.

- The '.cfg' output is now created on target.
- Arch-specific checker tests can be created by inserting a
suffix. For example:
/// CHECK-START-ARM64: int Main.foo(int) register (after)
/// CHECK-DAG: <<Arg:i\d+>> ParameterValue

Change-Id: I55cdb37f8e806c7ffdde6b676c8f44ac30b59051
74e1cc0a688bab7713efe0e313c9ed6793233a84 22-Jul-2015 Roland Levillain <rpl@google.com> When a Checker assertion cannot be parsed, display it.

Change-Id: Ib667c7aa24b2753f0963ed6b1f9f4227a9e586f4
a06d66a4ee60926127b9498b7ff0b3e37a24fccf 28-May-2015 David Brazdil <dbrazdil@google.com> ART: Distinguish Checker lines from comments

In order to prevent tests passing due to lines with hard-to-spot
formatting errors begin ignored, e.g. by forgetting the colon after
"//CHECK", Checker will now require its assertions to start with "///"
or "##", respectivelly for Java and Smali. Such lines will never be
ignored and will fail the test unless successfully parsed.

Change-Id: I0da9a8f13eb96d950af8c85df17d1899a853a299
711411957a433555eda4bcf8d1f05aabf04425e8 19-May-2015 David Brazdil <dbrazdil@google.com> ART: Implement next-line assertions in Checker

Some tests require verifying an exact sequence of lines in the graph
dump. This was already possible by inserting 'CHECK-NOT: {{.*}}'
between the individual lines, but hardly a convenient way of doing so.
This patch introduces a new 'CHECK-NEXT' kind of assertions that
replaces the old method and will become useful for testing assembly.

Change-Id: I1bb951707bda44320166dc7ef828866a6957a113
2c27f2ccf316aebf96cf365d33d2834a8206444d 12-May-2015 David Brazdil <dbrazdil@google.com> ART: Split Checker into smaller files

Checker code has become too messy and incomprehensible. This patch
splits it into more manageable and better structured units.
Functionality remains unchanged.

Resubmission of change I870c69827d2be2d09196a51382a3f47f31cd2ba3 due
to omission of file 'tools/checker/file_format/common.py'.

Change-Id: I277a4aa65a2e3b54f0e89901fdb9f289f55a325f
258802399dfc34ce4c628f386defa5bfdf8cf2f0 12-May-2015 David Brazdil <dbrazdil@google.com> Revert "ART: Split Checker into smaller files"

This reverts commit a490be5dd95982f77ff1447bea9ee06604038a96.

Change-Id: Ic3b7cf172200caced9ae2f10d2f200447e6801ee
a490be5dd95982f77ff1447bea9ee06604038a96 28-Apr-2015 David Brazdil <dbrazdil@google.com> ART: Split Checker into smaller files

Checker code has become too messy and incomprehensible. This patch
splits it into more manageable and better structured units.
Functionality remains unchanged.

Change-Id: I870c69827d2be2d09196a51382a3f47f31cd2ba3