Skip to content

Various fixes for Aarch64/ARM32/Thumb2 ASM#8672

Merged
JacobBarthelmeh merged 1 commit intowolfSSL:masterfrom
SparkiDev:asm_fixes_1
Apr 15, 2025
Merged

Various fixes for Aarch64/ARM32/Thumb2 ASM#8672
JacobBarthelmeh merged 1 commit intowolfSSL:masterfrom
SparkiDev:asm_fixes_1

Conversation

@SparkiDev
Copy link
Copy Markdown
Contributor

Description

cpuid.c: hwcaps not used.
thumb2-: ldm -> LDM
sp_arm32.c: No register assignment, fix sp_
from_bin
sp_armthumb.c: fix sp
from_bin
sp_cotexm.c: fix line lengths, fix sp
_from_bin

Testing

Regression tested ARM assembly builds.

Checklist

  • added tests
  • updated/added doxygen
  • updated appropriate READMEs
  • Updated manual and documentation

cpuid.c: hwcaps not used.
thumb2-*: ldm -> LDM
sp_arm32.c: No register assignment, fix sp_*_from_bin
sp_armthumb.c: fix sp_*_from_bin
sp_cotexm.c: fix line lengths, fix sp_*_from_bin
@SparkiDev SparkiDev added the For This Release Release version 5.9.1 label Apr 15, 2025
@SparkiDev SparkiDev self-assigned this Apr 15, 2025
@SparkiDev
Copy link
Copy Markdown
Contributor Author

retest this please

@JacobBarthelmeh JacobBarthelmeh requested a review from Copilot April 15, 2025 20:53
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR fixes several issues in the assembly routines and related helper routines for Aarch64/ARM32/Thumb2 targets. The changes include corrections to register/digit assignments in the sp_*_from_bin functions, stylistic updates to assembly instructions (changing “ldm” to “LDM”), and a minor unused-variable warning fix in cpuid.c.

Reviewed Changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated no comments.

Show a summary per file
File Description
wolfcrypt/src/sp_armthumb.c Adjusts register assignment indexing in sp_*_from_bin functions
wolfcrypt/src/port/arm/thumb2-poly1305-asm_c.c Updates assembly instruction syntax to use uppercase “LDM”
wolfcrypt/src/port/arm/thumb2-mlkem-asm_c.c Updates assembly instruction syntax to use uppercase “LDM”
wolfcrypt/src/port/arm/thumb2-chacha-asm_c.c Updates assembly instruction syntax to use uppercase “LDM”
wolfcrypt/src/port/arm/thumb2-aes-asm_c.c Updates assembly instruction syntax to use uppercase “LDM”
wolfcrypt/src/cpuid.c Suppresses unused variable warning for hwcaps with (void)hwcaps
Comments suppressed due to low confidence (1)

wolfcrypt/src/sp_armthumb.c:114

  • The new indexing expression d[i-0] is equivalent to d[i], which reverses the assignment order compared to the original hard-coded index d[0]. For example, if i equals 2 then case 2 now assigns to d[0] instead of d[2]. Please verify that this reordering is intentional.
case 0: d[i-0] = a[0]; //fallthrough

@JacobBarthelmeh JacobBarthelmeh merged commit d9fd107 into wolfSSL:master Apr 15, 2025
186 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

For This Release Release version 5.9.1

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants