[llvm-dev] Support of Big archive (AIX archive)

GUESNET, ETIENNE via llvm-dev llvm-dev at lists.llvm.org
Wed Mar 31 08:52:26 PDT 2021


Hello,
I implement support of AIX archive (big archive / XCOFF) on LLVM.
I have done a prototype available here : https://github.com/EGuesnet/llvm-project/commit/1db5ddbdfea5614d0b91a8a6a1920ac630163ec0 .
This prototype replaces support of GNU/BSD/... archive by big archive, but you can switch changing the include. I have implemented only read operation (t, x, p).

I want advices, especially to merge correctly support of Big archive and other archive. Main troubles to merge is big archive has a different header than other archive.
Moreover, big archives have a fix length header, and one header for each object; fix and object headers are different (they are the same structure for non-big archive). Big archives have member table and symbol table at the end of the archive, so you must stop to read it before the end; the location of these table are given with absolute offset, hard to take into account in current code.

Big archive documentation is here : https://www.ibm.com/support/knowledgecenter/en/ssw_aix_72/filesreference/ar_big.html .

Thanks.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20210331/15ea0490/attachment-0001.html>


More information about the llvm-dev mailing list