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
AIX Alignment -> AIX alignment