]> granicus.if.org Git - clang/commit
[ms-cxxabi] Raise aggregate memptr alignment to 8 for x86_32
authorReid Kleckner <reid@kleckner.net>
Fri, 31 Jan 2014 22:28:50 +0000 (22:28 +0000)
committerReid Kleckner <reid@kleckner.net>
Fri, 31 Jan 2014 22:28:50 +0000 (22:28 +0000)
commitecde7ac8eada08e0150aec708de636b27f792a8a
treeee926fd2c9e88d7bbe2fa5e34064322036f0bab8
parent974eb1d090aece41e72c31772ea7266b1e31f6e7
[ms-cxxabi] Raise aggregate memptr alignment to 8 for x86_32

With this change, we give different results for __alignof than MSVC, but
our record layout is compatible.

Some data member pointers also now have a size that is not a multiple of
their alignment.

Fixes PR18618.

Reviewers: majnemer

Differential Revision: http://llvm-reviews.chandlerc.com/D2669

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@200585 91177308-0d34-0410-b5e6-96231b3b80d8
lib/AST/MicrosoftCXXABI.cpp
test/CodeGenCXX/microsoft-abi-member-pointers.cpp
test/Layout/ms-x86-member-pointers.cpp [new file with mode: 0644]
test/SemaCXX/member-pointer-ms.cpp