This is an archive of the discontinued LLVM Phabricator instance.

[AIX][XCOFF] Use bit order of has_vec and longtbtable bits as defined in AIX header debug.h
ClosedPublic

Authored by DiggerLin on Jul 6 2021, 8:19 AM.

Details

Summary

The bit order of the has_vec and longtbtable bits in the traceback table generated by the XL compiler flipped at some point after v12.1. This is different from the definition is the AIX header debug.h. The change in the XL compiler that caused the deviation from the OS header definition was unintentional. Since both orderings are extant and the XL compiler runtime also expects the ordering defined by the OS, we will correct the output from LLVM to match the defined ordering given by the OS (which is also consistent with the Assembler Language Reference). Mitigation for traceback tables encoded with the wrong ordering is required for either ordering.

Diff Detail

Event Timeline

DiggerLin created this revision.Jul 6 2021, 8:19 AM
DiggerLin requested review of this revision.Jul 6 2021, 8:19 AM
Herald added a project: Restricted Project. · View Herald TranscriptJul 6 2021, 8:19 AM

@DiggerLin, just confirming that this covers everything that has landed? For example, D89049 is still pending for the tooling support (thus, not landed yet).

yes, It covered everything . the patch D89049 need to be rebased after the patch landing and https://reviews.llvm.org/D105023 landing

hubert.reinterpretcast edited the summary of this revision. (Show Details)Jul 7 2021, 6:43 PM
xingxue accepted this revision.Jul 8 2021, 12:30 PM

LGTM, thanks!

This revision is now accepted and ready to land.Jul 8 2021, 12:30 PM