This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
sfertile marked an inline comment as done.
Closed by commit rGb8f612e780e5: [PowerPC][AIX] Packed zero-width bitfields do
not affect alignment. (authored by sfertile).
stevewan accepted this revision.
stevewan added a comment.
LGTM. Thanks.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D106900/new/
https://reviews.llvm.org/D106900
___
cfe-commits mailing list
sfertile updated this revision to Diff 364097.
sfertile added a comment.
Don't update the unpacked field align based on IsPacked.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D106900/new/
https://reviews.llvm.org/D106900
Files:
sfertile marked 2 inline comments as done.
sfertile added inline comments.
Comment at: clang/lib/AST/RecordLayoutBuilder.cpp:1783
+if (FieldPacked) {
+ FieldAlign = UnpackedFieldAlign = 1;
+} else if (!MaxFieldAlignment.isZero()) {
stevewan wrote:
>
stevewan added inline comments.
Comment at: clang/lib/AST/RecordLayoutBuilder.cpp:1783
+if (FieldPacked) {
+ FieldAlign = UnpackedFieldAlign = 1;
+} else if (!MaxFieldAlignment.isZero()) {
`UnpackedFieldAlign` is used to check if the packed
stevewan added inline comments.
Comment at: clang/lib/AST/RecordLayoutBuilder.cpp:1781
- // pragma align(packed).
- if (isAIXLayout(Context) && !MaxFieldAlignment.isZero() && !FieldSize)
-FieldAlign = std::min(FieldAlign, MaxFieldAlignmentInBits);
sfertile
sfertile updated this revision to Diff 363147.
sfertile added a comment.
Fixed spelling and added a 'long long' zero width bitfield to the testing.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D106900/new/
https://reviews.llvm.org/D106900
Files:
sfertile added inline comments.
Comment at: clang/lib/AST/RecordLayoutBuilder.cpp:1781
- // pragma align(packed).
- if (isAIXLayout(Context) && !MaxFieldAlignment.isZero() && !FieldSize)
-FieldAlign = std::min(FieldAlign, MaxFieldAlignmentInBits);
stevewan
ZarkoCA accepted this revision.
ZarkoCA added a comment.
LGTM also. Just a comment typo.
Comment at: clang/lib/AST/RecordLayoutBuilder.cpp:1779
+ // On AIX, zero-width bitfields pad out to the natural alignment boundary,
+ // but dont increase the alignment greater than the
stevewan accepted this revision.
stevewan added a comment.
This revision is now accepted and ready to land.
LGTM with some nits.
Comment at: clang/lib/AST/RecordLayoutBuilder.cpp:1781
- // pragma align(packed).
- if (isAIXLayout(Context) && !MaxFieldAlignment.isZero() &&
sfertile updated this revision to Diff 362365.
sfertile added a comment.
clang-formatted
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D106900/new/
https://reviews.llvm.org/D106900
Files:
clang/lib/AST/RecordLayoutBuilder.cpp
sfertile created this revision.
sfertile added reviewers: stevewan, Jake-Egan.
Herald added subscribers: shchenz, nemanjai.
sfertile requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.
Zero-width bitfields on AIX pad out to the natral
12 matches
Mail list logo