the patch supports parsing the xcoff object file auxiliary header with llvm-readobj with option "auxiliary-headers"
the format of auxiliary header as
https://www.ibm.com/support/knowledgecenter/en/ssw_aix_72/filesreference/XCOFF.html#XCOFF__fyovh386shar
the object file
llvm/test/tools/llvm-readobj/XCOFF/Inputs/xcoff-32-xlc-exec
llvm/test/tools/llvm-readobj/XCOFF/Inputs/xcoff-32-xlc-obj.o
llvm/test/tools/llvm-readobj/XCOFF/Inputs/xcoff-64-xlc-exec
are build from the source code with xlc
struct Point {
double x;
double y;
double z;
};
Point add_points(Point a, Point b) {
Point p;
p.x = a.x + b.x;
p.y = a.y + b.y;
p.z = a.z + b.z;
return p;
}
int main() {
Point a = {1.0, 3.0, 4.0};
Point b = {2.0, 8.0, 5.0};
Point c = add_points(a, b);
return 0;
}
This block currently cut in between XCOFFSectionHeader code block.
I would suggest to move the new block to the current line 51.
Also, is it worth to consider taking the XCOFFSectionHeader template approach now? Just like XCOFFSectionHeader, we have same member functions and share the same mask between 32 and 64 bit.