jhuber6 wrote:

> 
> How about using `--offload=<target>` which can take a target triple? E.g.
> 
>     * `--offload=spirv64-amd` or something like that: pick HIPAMD tool chain.
> 
>     * `--offload=spirv64`: pick HIPSPV tool chain.
> 
> 
> And also remove this 
> [limitation](https://github.com/llvm/llvm-project/blob/5fc712c4bbe84e6cbaa1f7d2a0300f613f11b0c3/clang/lib/Driver/Driver.cpp#L3130-L3136)
>  if you want `--offload` to work along with `--offload-arch`.
> 
> Or alternatively allow multiple `--offload` options, deprecate 
> `--offload-arch` and use `--offload` instead. For convenience and easy 
> transition, options like `--offload=<processor>` could be allowed where the 
> `<processor>` is treated as an alias for an offload target (E.g. 
> `--offload=gfx900` could imply `--offload=amdgcn-amd-amdhsa:gfx900` or 
> something like that).

I've been planning to improve `--offload` at some point. When using the OpenMP 
toolchain we have `-fopenmp-target=amdgcn-amd-amdhsa,nvptx64-nvidia-cuda` for 
example, which will just active those toolchains and default to whatever 
`nvptx-arch` and `amdgpu-arch` spit out. We can most likely use similar logic 
if needed. The OpenMP solution to target specific arguments is 
`-Xopenmp-target=amdgcn-amd-amdhsa -march=`, though that's not necessarily the 
best solution.

https://github.com/llvm/llvm-project/pull/75357
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to