aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md41
1 files changed, 41 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..08823c5
--- /dev/null
+++ b/README.md
@@ -0,0 +1,41 @@
+# 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
+