This is the same with commercial XLC on AIX. And Some internal improvements were found after this change.
There are some follow-ups:
1: for commercial XLC on AIX, the default csect alignment for read-write data section is 4 bytes for 32bit XCOFF and 8 bytes for 64 bit XCOFF. For llvm on AIX, now they are both 4 bytes.
2: For the XCOFF section that has one entry in the section header, commercial XLC on AIX also use 32 bytes as alignment, but now in XCOFFObjectWriter.cpp, the alignment is also 4 bytes.