Skip to content

Conversation

@simpal01
Copy link
Contributor

@simpal01 simpal01 commented Apr 3, 2025

simpal01 added 2 commits April 3, 2025 14:48
…are passed to multilib selection logic

We need to incorporate the upstreamed patch
llvm/llvm-project#134099 into the
20.x branch. So applying this as patch file.
…builds. (arm#250)

We don’t have a -mno-unaligned-access specific variant for the v8M libraries. For v8-M with strict aligned access, it’s more appropriate to use the v7-M variants, as they include a version with strict alignment support. It was a deliberate decision to provide strict-alignment variants only for a subset of architectures.

To support this, both -mno-unaligned-access and -munaligned-access options must be passed into the multilib selection logic. This aligns with the approach in llvm/llvm-project#134099, which also considers the target architecture when determining the alignment access policy. Since Armv6-M does not support unaligned accesses, test changes are needed to reflect the updated behaviour when the target architecture is taken into account.

This patch fixes below issues.

1. The naming of the v8-M libraries should explicitly include
‘unaligned’ to reflect their behaviour.

2. When using -mno-unaligned-access, the multilib system should instead
select the v7-M variant.

3. Armv6m test changes are needed to reflect the updated behaviour when
the target architecture is taken into account.

(cherry picked from commit 8c3bbfc)
@simpal01 simpal01 requested review from dcandler and vhscampos April 3, 2025 17:20
@simpal01 simpal01 merged commit 27ee08e into arm:release/arm-software/20.x Apr 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants