Skip to content
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

Avoid __vectorcall on ARM64EC #4600

Merged
merged 1 commit into from Apr 19, 2024
Merged

Conversation

CaseyCarter
Copy link
Member

The documentation says "On ARM64EC, __vectorcall is unsupported and rejected by the compiler." I'm not sure why our usage isn't being rejected, but we have confirmation from the compiler team that ARM64 doesn't currently accept __vectorcall so we should avoid it.

Fixes #4596

The documentation says "On ARM64EC, `__vectorcall` is unsupported and rejected by the compiler." I'm not sure why our usage isn't being rejected, but we have confirmation from the compiler team that ARM64 doesn't currently accept `__vectorcall` so we should avoid it.

Fixes microsoft#4596
@CaseyCarter CaseyCarter added bug Something isn't working ARM64 Related to the ARM64 architecture labels Apr 18, 2024
@CaseyCarter CaseyCarter requested a review from a team as a code owner April 18, 2024 16:22
Comment on lines +67 to 68
#if (defined(_M_IX86) || (defined(_M_X64) && !defined(_M_ARM64EC))) && !defined(_M_CEE)
int __vectorcall g() {
Copy link
Member

Choose a reason for hiding this comment

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

No change requested: This test has "expected results" below that would need to be updated if we ever add runtime coverage of ARM64EC, but we can do that if/when that happens.

@StephanTLavavej StephanTLavavej self-assigned this Apr 18, 2024
@StephanTLavavej
Copy link
Member

I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed.

@StephanTLavavej StephanTLavavej merged commit 726ebe7 into microsoft:main Apr 19, 2024
35 checks passed
@StephanTLavavej
Copy link
Member

Thanks for restoring balance to the force, reducing "vector"s here while @AlexGuteniev adds vectorization everywhere! 🤪 😹 🤣

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ARM64 Related to the ARM64 architecture bug Something isn't working
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

<type_traits>: __vectorcall _should_ be rejected on ARM64EC but isn't
2 participants