[all-commits] [llvm/llvm-project] 9d3cf1: [Clang][X86] Introduce Clang ABI Gate for MSVC ali...
Evgenii Kudriashov via All-commits
all-commits at lists.llvm.org
Tue Jul 28 23:57:39 PDT 2026
Branch: refs/heads/release/23.x
Home: https://github.com/llvm/llvm-project
Commit: 9d3cf1dff4dd8b3ef857f85cbdf7584fb901c7ce
https://github.com/llvm/llvm-project/commit/9d3cf1dff4dd8b3ef857f85cbdf7584fb901c7ce
Author: Evgenii Kudriashov <evgenii.kudriashov at intel.com>
Date: 2026-07-29 (Wed, 29 Jul 2026)
Changed paths:
M clang/include/clang/Basic/ABIVersions.def
M clang/lib/Basic/Targets/X86.cpp
M clang/lib/Basic/Targets/X86.h
M clang/test/CodeGen/align-x68_64.c
M clang/test/CodeGenCXX/ms-constexpr-static-data-member.cpp
Log Message:
-----------
[Clang][X86] Introduce Clang ABI Gate for MSVC alignment (#210305)
On x86_64-windows-msvc after 8ecec455183f, clang applies the MSVC
size-based global-alignment scheme (Microsoft64BitMinGlobalAlign) and
does not apply the Sys V "large array" alignment increase. Users may
want to preserve the earlier ABI for compatibility with objects produced
by older clang releases.
Gate this behavior on the Clang ABI compatibility level. When
`-fclang-abi-compat=22` (or lower) is in effect,
MicrosoftX86_64TargetInfo restores LargeArrayMinWidth/LargeArrayAlign to
128 and getMinGlobalAlign skips the Microsoft64BitMinGlobalAlign step,
matching the older alignment choices.
Assisted by Claude (Anthropic).
(cherry picked from commit cb383a37440d27238f8a01eee05228910d65d63e)
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list