Clone this repo:

Branches

  1. a748ee5 initial commit by Milosz Wasilewski ยท 11 years ago master

Pointer tagging tests

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.

Build

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

Running

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.

Advanced Builds

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