diff options
author | Mark Brown <broonie@kernel.org> | 2023-01-16 16:04:41 +0000 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2023-01-20 12:23:06 +0000 |
commit | 2cdeecdb95134cc0abc76626a59c94073cda8a47 (patch) | |
tree | 637a536b38705d8c19231220ce6438dba1861940 /arch/arm64/include/asm/fpsimdmacros.h | |
parent | 8ef55603b8eaf9362464b3197eb139baa4bd18b9 (diff) |
arm64/sme: Manually encode ZT0 load and store instructions
In order to avoid unrealistic toolchain requirements we manually encode the
instructions for loading and storing ZT0.
Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20221208-arm64-sme2-v4-6-f2fa0aef982f@kernel.org
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm64/include/asm/fpsimdmacros.h')
-rw-r--r-- | arch/arm64/include/asm/fpsimdmacros.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/arch/arm64/include/asm/fpsimdmacros.h b/arch/arm64/include/asm/fpsimdmacros.h index 5e0910cf4832..cd03819a3b68 100644 --- a/arch/arm64/include/asm/fpsimdmacros.h +++ b/arch/arm64/include/asm/fpsimdmacros.h @@ -221,6 +221,28 @@ .endm /* + * LDR (ZT0) + * + * LDR ZT0, nx + */ +.macro _ldr_zt nx + _check_general_reg \nx + .inst 0xe11f8000 \ + | (\nx << 5) +.endm + +/* + * STR (ZT0) + * + * STR ZT0, nx + */ +.macro _str_zt nx + _check_general_reg \nx + .inst 0xe13f8000 \ + | (\nx << 5) +.endm + +/* * Zero the entire ZA array * ZERO ZA */ |