Bugfix/fix intrinsic header for arm architecture #614
No reviewers
Labels
No labels
api-break
approved
bug
component-docs
component-platform
component-test
dependencies
deprecation
DO-NOT-MERGE
enhancement
good first issue
help wanted
needs-adoption
needs-backports
needs-ci
needs-design-approval
needs-info
needs-preceding-pr
needs-review
needs-reviewer
needs-work
priority-high
priority-low
priority-medium
priority-scheduled
priority-very-high
resolved-after-1.1
single-reviewer
size-l
size-m
size-optimisation
size-s
size-xs
No milestone
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
gh-Mbed-TLS/TF-PSA-Crypto!614
Loading…
Reference in a new issue
No description provided.
Delete branch "bugfix/fix-intrisic-header-armf"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Description
Currently the development branch fails to compile in arm silicone because of how the arm intrisics macros are not properly defined. This pr changes the inclusion order of
tf_psa_crypto_common.hafter they have been defined, in affected source files.It also updates to the head of framework to bring in other related bugfixes in the tf-psa-crypto branch.
PR checklist
Please remove the segment/s on either side of the | symbol as appropriate, and add any relevant link/s to the end of the line.
If the provided content is part of the present PR remove the # symbol.
If you base your PR on current development, you won't need the framework pointer update. It is already there.
The fix for
aesce.cis already approved in https://github.com/Mbed-TLS/TF-PSA-Crypto/pull/603.But I'd missed that
sha256.cwas also affected, thanks.Latest force push was a rebase to latest development.
@ -27,1 +22,3 @@* at the top of this file, before any includes.* at the top of this file, before any includes but after the intrinsic* declaration. This is necessary with* Clang <=15.x. With Clang 16.0 and above, these macro definitions are"at the top of this file, before any includes."
That's not true.
#include "tf_psa_crypto_common.h"is before.sha512.chas the same problem assha256.c.Maybe a better fix would be to move the
#define __ARM_FEATURE_xxxdefinitions totf_psa_crypto_common.h(common.hin 3.6), before it includes<arm_neon.h>? That would seem like the natural approach to me, but I don't know why it wasn't done that way originally.@ -27,1 +22,3 @@* at the top of this file, before any includes.* at the top of this file, before any includes but after the intrinsic* declaration. This is necessary with* Clang <=15.x. With Clang 16.0 and above, these macro definitions areBut it shouldn't be, that's the point.
I have moved the include in sha512 for now and rebase on top of latest development to pick up your changes. I am preparing a patch to test moving it to tf_psa_crypto_common but I could not get it to work on my computer as of now. I will update the pr as soon as its done.
I have done another re-base and no other changes since the previous one. Changes
github.com/Mbed-TLS/TF-PSA-Crypto@3aa5836893..577f51c846are rebased content.I will be following up with some changes as requested above
Push to
github.com/Mbed-TLS/TF-PSA-Crypto@e48c6ec38cis a simple rebase.Added commit https://github.com/Mbed-TLS/TF-PSA-Crypto/pull/614/commits/a1d8494067c904b44c5325991c9b9b7b141436eb which is implementing what @gilles-peskine-arm was asking at https://github.com/Mbed-TLS/TF-PSA-Crypto/pull/614#pullrequestreview-3605551266.
I clean-up the the include logic, but this commit is a quality of life improvement and I could undo it if you do not feel it is necessary.
Latest head is identical to the previously approved head -> link . You can check the comparison -> link
The proposed change by
github.com/Mbed-TLS/TF-PSA-Crypto@93153586afwill be moved to a separate pr because it needs a design-aproved change on how we handlecheck-names.pyI also cleaned up the commit stack since the change is minimal.
LGTM
LGTM (identical content to c9a17193020cdda59109b2a1e57b946ad1a8b4e2 which I previously approved)