[PATCH] D117616: GCC ABI Compatibility: Preserve alignment of non-pod members in packed structs

David Blaikie via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Oct 13 14:18:26 PDT 2022


dblaikie added inline comments.


================
Comment at: clang/docs/ReleaseNotes.rst:239-243
+- GCC doesn't pack non-POD members in packed structs unless the packed
+  attribute is also specified on the member. Clang historically did perform
+  such packing. Clang now matches the gcc behavior (except on Darwin and PS4).
+  You can switch back to the old ABI behavior with the flag:
+  ``-fclang-abi-compat=13.0``.
----------------
dblaikie wrote:
> dblaikie wrote:
> > tstellar wrote:
> > > dblaikie wrote:
> > > > MatzeB wrote:
> > > > > Ugh... The release notes went missing in `main` now:
> > > > > 
> > > > > * We had them in clang-14, but then reverted in the release process of clang-14 so they never showed for clang-14.
> > > > > * In `main` we removed all release nodes when going from 14->15.
> > > > > 
> > > > > So this notice is effectively lost now...
> > > > Ah, thanks - readded it in 0b903ef6aa0976a60d3f448837f3c43adaf09cc1
> > > > 
> > > > Anyone have feelings about whether we should move the old ABI under Ver14, instead of Ver13, since the break was never released in Ver14?
> > > That seems fine to me.
> > Sent D126334
> Done in D126334 (posted, reviewed, and committed)
Made the matching change for v15, since this was reverted on that release branch too (sorry this has been such a drawn out issue - thanks for all the help and such) in 9363071303ec59bc9e0d9b989f08390b37e3f5e4


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D117616/new/

https://reviews.llvm.org/D117616



More information about the cfe-commits mailing list