Skip to content

[AArch64][SME] Fix broken compiler check for SME2 support in compiler-rt #121625

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jan 6, 2025

Conversation

aemerson
Copy link
Contributor

@aemerson aemerson commented Jan 4, 2025

This compile time test uses inline asm with .arch directives to set the target feature. It is however broken and always fails, since each asm() construct in LLVM sets up a new AsmParser, and therefore the .arch directive has no effect on later asm() contents. To fix this we need to use a single inline asm() call with the entire code chunk to emit contained inside.

…-rt.

This compile time test uses inline asm with .arch directives to set the
target feature. It is however broken and always fails, since each asm()
construct in LLVM sets up a new AsmParser, and therefore the .arch directive
has no effect on later asm() contents. To fix this we need to use a single
inline asm() call with the entire code chunk to emit contained inside.
@aemerson aemerson merged commit 3c8344f into llvm:main Jan 6, 2025
9 checks passed
@aemerson aemerson deleted the fix-crt-sme-check branch January 6, 2025 09:38
paulhuggett pushed a commit to paulhuggett/llvm-project that referenced this pull request Jan 7, 2025
…-rt (llvm#121625)

This compile time test uses inline asm with `.arch` directives to set
the target feature. It is however broken and always fails, since each
`asm()` construct in LLVM sets up a new AsmParser, and therefore the
`.arch` directive has no effect on later `asm()` contents. To fix this
we need to use a single inline `asm()` call with the entire code chunk
to emit contained inside.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants