[PATCH] kselftest/arm64: Fix hwcaps selftest build

Mark Brown posted 1 patch 2 years, 4 months ago
tools/testing/selftests/arm64/abi/hwcap.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
[PATCH] kselftest/arm64: Fix hwcaps selftest build
Posted by Mark Brown 2 years, 4 months ago
The hwcaps selftest currently relies on the assembler being able to
assemble the crc32w instruction but this is not in the base v8.0 so is not
accepted by the standard GCC configurations used by many distributions.
Switch to manually encoding to fix the build.

Fixes: 09d2e95a04ad ("kselftest/arm64: add crc32 feature to hwcap test")
Signed-off-by: Mark Brown <broonie@kernel.org>
---
 tools/testing/selftests/arm64/abi/hwcap.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/arm64/abi/hwcap.c b/tools/testing/selftests/arm64/abi/hwcap.c
index 112b6a219382..3b26a3660292 100644
--- a/tools/testing/selftests/arm64/abi/hwcap.c
+++ b/tools/testing/selftests/arm64/abi/hwcap.c
@@ -42,7 +42,8 @@ static void atomics_sigill(void)
 
 static void crc32_sigill(void)
 {
-	asm volatile("crc32w w0, w0, w1");
+	/* CRC32W W0, W0, W1 */
+	asm volatile(".inst 0x1ac14800" : : : );
 }
 
 static void cssc_sigill(void)

---
base-commit: 358b763ee64b11f45287c286e1f6145729ed49ab
change-id: 20230816-arm64-fix-crc32-build-9d4c94f2e60e

Best regards,
-- 
Mark Brown <broonie@kernel.org>
Re: [PATCH] kselftest/arm64: Fix hwcaps selftest build
Posted by Will Deacon 2 years, 4 months ago
On Wed, 16 Aug 2023 19:39:32 +0100, Mark Brown wrote:
> The hwcaps selftest currently relies on the assembler being able to
> assemble the crc32w instruction but this is not in the base v8.0 so is not
> accepted by the standard GCC configurations used by many distributions.
> Switch to manually encoding to fix the build.
> 
> 

Applied to arm64 (for-next/selftests), thanks!

[1/1] kselftest/arm64: Fix hwcaps selftest build
      https://git.kernel.org/arm64/c/94f23ac36f8b

Cheers,
-- 
Will

https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev