jhuber6 wrote: > Sorry for the delayed response - I have been on a long vacation. > > I’m not familiar with the new offload driver internals to give pointers on > what needs to be changed and where for retaining the custom plugin and linker > behavior needed by the [chipStar](https://github.com/CHIP-SPV/chipStar) nor I > can devote time to look at it currently. > > Perhaps, the HIPSPV toolchain could default to the old offload driver in the > meantime until I or someone else takes a look at it. > > cc @pjaaskel and @pvelesko for awareness.
The steps are roughly outlined in https://clang.llvm.org/docs/OffloadingDesign.html, though it hasn't been updated for the other targets. Generally it means you'll need to do some more plumbing. The problem with HIPSPV here is that it still uses the `OFK_HIP` type, which means it's not easy to determine whether or not to use the new driver from the compiler stages, and even so I'd *really* prefer to be able to delete all the old handling soon. More or less, the main change is that all offloading targets go through the same function. For non-RDC compilation it's not too different, but for RDC compilation everything gets put into a fat binary using a custom binary format inside LLVM. This then gets passed to the linker wrapper, whose job is to extract those objects and generate a linker job. So, what you need is for `clang --target=<whatever your triple> a b c` to work. https://github.com/llvm/llvm-project/pull/123359 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits