D92434: AMDGPU code object V4 ABI -- docs don't quite match the source tree state.

Artem Belevich via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 7 15:45:45 PST 2021


+CC: Yaxun Liu.

On Thu, Jan 7, 2021 at 12:22 PM Artem Belevich <tra at google.com> wrote:

> Hi,
>
> It appears that the AMDGPU documentation updated in
> https://reviews.llvm.org/D92434 does not quite match the code we
> currently have in the LLVM source tree.
>
> It's not very helpful when the recently-updated public docs say one thing,
> but the code does something completely different.
>
> E.g. I'm failing to find ELF::EF_AMDGPU_FEATURE_XNACK_V2 and other new
> flags it describes. At the same time, the flags that were removed from the
> documentation are still there (e.g EF_AMDGPU_XNACK)
>
> https://github.com/llvm/llvm-project/blob/4e2e785ddd35c421a4df9453f17b8317d6b62b2c/llvm/include/llvm/BinaryFormat/ELF.h#L738
>
> AFAICT, the current state of the tree matches V3 ABI, but uses different
> constant names than the ones used in the docs.
>
> Are the corresponding code changes handled in a separate review? If so,
> I'd appreciate it if you could point me in the right direction and, maybe,
> update the review tracker, too.
>

AFAICT, the doc changes that landed in LLVM are part of this change in
AMD's fork of the LLVM project:
https://github.com/ROCm-Developer-Tools/amd-llvm-project/commit/1ccc5cc50e77bc626c09043f0709dc0049b2780b

I assume the changes will eventually be upstreamed into LLVM. Is there an
ETA for that?

The reason I'm asking is that I need to build AMD's comgr (
https://github.com/RadeonOpenCompute/ROCm-CompilerSupport) with LLVM from
the LLVM's tree. An old version of comgr (3.7) is broken because LLVM has
recently changed some ELF-related APIs, and the most recent version of
comgr does not build because it needs the ELF changes mentioned above that
are not in the LLVM yet.  I can probably build comgr 4.0, which still uses
the current version of LLVM's ELF constants, but it will be broken again
once AMD's ELF changes do make it into LLVM. If the changes are going to
land soon, I may as well wait until both comgr and LLVM are in sync, again.

--Artem




>
> If the code is not quite ready yet, perhaps it would make sense to
> postpone doc updates (at least the parts that remove the info about the
> *current* state of the source tree) until the code is ready and clearly
> mark the parts of the documentation that describe things that do not exist
> yet.
>
>
> Thank you,
> --Artem Belevich
>


-- 
--Artem Belevich
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210107/7fd38a50/attachment.html>


More information about the llvm-commits mailing list