DynamoRIO / DynamoRIO/dynamorio
AArch64 SVE: Add 128 bit vector length tests to CI
- Dominant language
- C
- Stars
- 3.2k
- Forks
- 629
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 30
Description
The current SVE tests (**aarch64-precommit (ubuntu-20-arm64-sve**)) run on hardware which has a 256 bit vector length (VL) as a thread default, the maximum on that hardware. The fix for https://github.com/DynamoRIO/dynamorio/issues/6760 exposed lack of test coverage based on different VLs.
SVE hardware and SVE support in the Linux kernel enables users to select VLs shorter than the maximum. We can use the same hardware and the [prctl(2)](https://man7.org/linux/man-pages/man2/prctl.2.html) syscall to set VL to 128 to defend changes in VL sensitive code paths. This would be in addition to the existing tests using VL of 256 bits.
Contributor guide
Research direction
Start by locating the aarch64-precommit (ubuntu-20-arm64-sve) SVE test configuration and its existing 256-bit tests. Read how the tests invoke Linux prctl(2), then add coverage using a 128-bit vector length alongside the current 256-bit run. Done means the new 128-bit tests execute in CI on the existing SVE hardware and defend VL-sensitive paths.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, linux
- Domain
- ci-cd, operating-systems, testing-qa
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100