[PATCH] D78563: [AIX] Port power alignment rules to clang

Xiangling Liao via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Apr 21 07:31:21 PDT 2020


Xiangling_L created this revision.
Xiangling_L added reviewers: jasonliu, hubert.reinterpretcast, sfertile.
Xiangling_L added a project: LLVM.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

Address the following aspects of power alignment rules:

- Implemented double/long double alignment when not first struct member
- A double member in union is always treated as the first member, and should not use special alignment rule
- Fixed the alignment issue caused by virtual function
- Applied AIX Alignment rule when layout base class
- Fixed AIX layout for zero sized bitfield followed by double


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D78563

Files:
  clang/include/clang/AST/RecordLayout.h
  clang/lib/AST/RecordLayout.cpp
  clang/lib/AST/RecordLayoutBuilder.cpp
  clang/test/Layout/aix-double-struct-member.cpp
  clang/test/Layout/aix-virtual-function-alignment.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D78563.258990.patch
Type: text/x-patch
Size: 25445 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20200421/439b0c0d/attachment-0001.bin>


More information about the cfe-commits mailing list