mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-07-30 10:47:28 +02:00
Merge pull request #8561 from SparkiDev/poly1305-arm32-asm-fix
Poly1305 ARM32 assembly code: loading with ldm
This commit is contained in:
@ -815,7 +815,10 @@ L_poly1305_arm32_blocks_start_1:
|
|||||||
mov r12, #1
|
mov r12, #1
|
||||||
push {r2}
|
push {r2}
|
||||||
# Load message
|
# Load message
|
||||||
ldm r1, {r2, r3, r4, r5}
|
ldr r2, [r1]
|
||||||
|
ldr r3, [r1, #4]
|
||||||
|
ldr r4, [r1, #8]
|
||||||
|
ldr r5, [r1, #12]
|
||||||
# Add message
|
# Add message
|
||||||
adds r7, r7, r2
|
adds r7, r7, r2
|
||||||
adcs r8, r8, r3
|
adcs r8, r8, r3
|
||||||
|
@ -870,7 +870,10 @@ void poly1305_arm32_blocks(Poly1305* ctx_p, const unsigned char* m_p,
|
|||||||
"mov r12, #1\n\t"
|
"mov r12, #1\n\t"
|
||||||
"push {r2}\n\t"
|
"push {r2}\n\t"
|
||||||
/* Load message */
|
/* Load message */
|
||||||
"ldm %[m], {r2, r3, r4, r5}\n\t"
|
"ldr %[bytes], [%[m]]\n\t"
|
||||||
|
"ldr r3, [%[m], #4]\n\t"
|
||||||
|
"ldr r4, [%[m], #8]\n\t"
|
||||||
|
"ldr r5, [%[m], #12]\n\t"
|
||||||
/* Add message */
|
/* Add message */
|
||||||
"adds r7, r7, %[bytes]\n\t"
|
"adds r7, r7, %[bytes]\n\t"
|
||||||
"adcs r8, r8, r3\n\t"
|
"adcs r8, r8, r3\n\t"
|
||||||
|
Reference in New Issue
Block a user