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

[Clang][AArch64] Define x86_64 macros for ARM64EC targets #65420

Merged
merged 1 commit into from
Sep 10, 2023

Conversation

bylaws
Copy link
Contributor

@bylaws bylaws commented Sep 5, 2023

The ARM64EC ABI requires that struct layouts match between regular x86_64 code and ARM64EC code. Ensure this is always the case by defining the same set of macros as are set when targeting x86_64 but with the addition of __arm64ec__/_M_ARM64EC macros that can be used for any ARM64EC specific code.

More details can be found here: https://techcommunity.microsoft.com/t5/windows-os-platform-blog/getting-to-know-arm64ec-defines-and-intrinsic-functions/ba-p/2957235

@bylaws bylaws requested review from a team as code owners September 5, 2023 22:48
@github-actions github-actions bot added backend:AArch64 clang:frontend Language frontend issues, e.g. anything involving "Sema" labels Sep 5, 2023
clang/test/Preprocessor/predefined-win-macros.c Outdated Show resolved Hide resolved
@compnerd compnerd requested a review from a team September 6, 2023 00:37
@mstorsjo
Copy link
Member

mstorsjo commented Sep 6, 2023

CC @cjacek @efriedma-quic

The ARM64EC ABI requires that struct layouts match between regular
x86_64 code and ARM64EC code. Ensure this is always the case by defining
the same set of macros as are set when targeting x86_64 but with the
addition of __arm64ec__/_M_ARM64EC macros for any ARM64EC specific code.

More details can be found here: https://techcommunity.microsoft.com/t5/windows-os-platform-blog/getting-to-know-arm64ec-defines-and-intrinsic-functions/ba-p/2957235
@efriedma-quic
Copy link
Collaborator

LGTM

1 similar comment
@cjacek
Copy link
Contributor

cjacek commented Sep 10, 2023

LGTM

@mstorsjo mstorsjo merged commit 97fe519 into llvm:main Sep 10, 2023
2 checks passed
ZijunZhaoCCK pushed a commit to ZijunZhaoCCK/llvm-project that referenced this pull request Sep 19, 2023
The ARM64EC ABI requires that struct layouts match between regular
x86_64 code and ARM64EC code. Ensure this is always the case by defining
the same set of macros as are set when targeting x86_64 but with the
addition of `__arm64ec__/_M_ARM64EC` macros that can be used for any
ARM64EC specific code.

More details can be found here:
https://techcommunity.microsoft.com/t5/windows-os-platform-blog/getting-to-know-arm64ec-defines-and-intrinsic-functions/ba-p/2957235
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend:AArch64 clang:frontend Language frontend issues, e.g. anything involving "Sema" platform:windows
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants