[clang] [HIP] Do not include the CUID module hash with the new driver (PR #84332)

Yaxun Liu via cfe-commits cfe-commits at lists.llvm.org
Thu Mar 7 08:10:00 PST 2024


yxsamliu wrote:

> > CUID is needed for device static variable to be accessible on host side. Since the driver does not know whether device static variables are accessed on host side, it should always enable CUID for HIP.
> 
> Oh! I think I remember what I did. I made the CUID hash generator thing make a fallback that just uses the file's `inode` because it was likely good enough for the use-case. So the new driver doesn't pass `-cuid` but it does do some scrambling on the globals.

As long as each generated .o has a unique CUID that is fine. Using inode as CUID has issue since users may compile the same file twice with different options to generate two different .o file (the case of rccl), then the CUID is not unique.

https://github.com/llvm/llvm-project/pull/84332


More information about the cfe-commits mailing list