This test suite is designed to verify that the AArch64 tagged-addressing feature is properly supported. Tagged addressing is guaranteed to be available in the ARMv8 architecture, but it requires some kernel support.
To build the test suite on an AArch64 platform:
$ make
To cross-compile, set CC
to your cross-compiler's gcc
exeuctable. For example:
$ make CC=aarch64-linux-gnu-gcc
To run the whole test suite, use the provided run-tests.sh
script.
$ ./run-tests.sh # Run all tests. $ ./run-tests.sh <pattern> # Run all tests matching pattern (using `grep`).
Tests can be run by using pointer_tagging_tests
directly, but this will only allow one test to be run at a time. Use --help
for usage information.
The test suite will build and run on other architectures (such as amd64) if you disable tagging and assembly:
$ make notag.noasm
This disables several tests that require assembly, and also prevents other tests from using tagged addresses. This option is intended to aid debugging, in case a test is misbehaving. The options may also be specified alone:
$ make notag $ make noasm