summaryrefslogtreecommitdiff
path: root/cipher/crc-armv8-aarch64-ce.S
diff options
context:
space:
mode:
Diffstat (limited to 'cipher/crc-armv8-aarch64-ce.S')
-rw-r--r--cipher/crc-armv8-aarch64-ce.S11
1 files changed, 7 insertions, 4 deletions
diff --git a/cipher/crc-armv8-aarch64-ce.S b/cipher/crc-armv8-aarch64-ce.S
index b6cdbb3d..5609e368 100644
--- a/cipher/crc-armv8-aarch64-ce.S
+++ b/cipher/crc-armv8-aarch64-ce.S
@@ -25,8 +25,6 @@
.cpu generic+simd+crypto
-.text
-
/* Structure of crc32_consts_s */
@@ -35,7 +33,11 @@
/* Constants */
+SECTION_RODATA
+
.align 6
+ELF(.type _crc32_aarch64_ce_constants,%object;)
+_crc32_aarch64_ce_constants:
.Lcrc32_constants:
.Lcrc32_partial_fold_input_mask:
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
@@ -54,6 +56,7 @@
.byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
.byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
+.text
/*
* void _gcry_crc32r_armv8_ce_bulk (u32 *pcrc, const byte *inbuf, size_t inlen,
@@ -71,7 +74,7 @@ _gcry_crc32r_armv8_ce_bulk:
*/
CFI_STARTPROC()
- GET_LOCAL_POINTER(x7, .Lcrc32_constants)
+ GET_DATA_POINTER(x7, .Lcrc32_constants)
add x9, x3, #consts_k(5 - 1)
cmp x2, #128
@@ -280,7 +283,7 @@ _gcry_crc32_armv8_ce_bulk:
*/
CFI_STARTPROC()
- GET_LOCAL_POINTER(x7, .Lcrc32_constants)
+ GET_DATA_POINTER(x7, .Lcrc32_constants)
add x4, x7, #.Lcrc32_bswap_shuf - .Lcrc32_constants
cmp x2, #128
ld1 {v7.16b}, [x4]