[PATCH] D34784: [OpenMP] Add flag for specifying the target device architecture for OpenMP device offloading

Hal Finkel via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Jun 30 09:15:33 PDT 2017

hfinkel added a comment.


>>>> Okay, good, this is exactly where I was going when I said I was worried about generalization. -march seems like one of many flags I might want to pass to the target compilation. Moreover, it doesn't seem special in what regard.
>>>> We have -Xclang and -mllvm, etc. to pass flags through to other stages of compilation. Could we do something similar here? Maybe something like: ``-Xopenmp-target:openmp-powerpc64le-ibm-linux-gnu -march=pwr7``. That's unfortunately long, but if there's only one target, we could omit the triple?
>>> The triple could be omitted, absolutely.
>>> If you have the following:
>>> -fopenmp-targets=openmp-powerpc64le-ibm-linux-gnu ``-Xopenmp-target:openmp-powerpc64le-ibm-linux-gnu -march=pwr7`` ``-Xopenmp-target:openmp-powerpc64le-ibm-linux-gnu -march=pwr8``
>>> This would end up having a toolchain called for each one of the -Xopenmp-target sets of flags even though a single triple was specified under the -fopenmp-targets. Would this be ok?
>> Why? That does not sound desirable. And could you even use these multiple outputs? I think you'd want to pass all of the arguments for each target triple to the one toolchain invocation for that target triple. Is that possible?
> I agree, I don't think that is something we want (i.e. having one triple lead to two toolchains), with the current flags you can't do that today. I wanted to check with you though that's why i mentioned it.
> I think appending all options for a particular triple together is more desirable.

Good, let's do that.



More information about the cfe-commits mailing list