================ @@ -3623,6 +3623,9 @@ static llvm::omp::OpenMPOffloadMappingFlags mapParentWithMembers( LLVM::ModuleTranslation &moduleTranslation, llvm::IRBuilderBase &builder, llvm::OpenMPIRBuilder &ompBuilder, DataLayout &dl, MapInfosTy &combinedInfo, MapInfoData &mapData, uint64_t mapDataIndex, bool isTargetParams) { + assert(!ompBuilder.Config.isTargetDevice() && + "function only supported for host device codegen"); ---------------- bhandarkar-pranav wrote:
> Yes, I do agree that "host device" seems like a rather contradictory term, > since we generally just talk about "host" as the CPU and "device" as whatever > we're offloading to. The reason of using these terms is to align with OpenMP > terminology (5.2 spec, Section 1.2.1): > > > **host device** The _device_ on which the _OpenMP program_ begins execution. > > **target device** A _device_ with respect to which the current _device_ > > performs an operation, as specified by a _device construct_ or an OpenMP > > device memory routine. > > This is also why the `-fopenmp-is-target-device` flag is called that and not > `-fopenmp-is-device` (which [used to be its > name](https://reviews.llvm.org/D154591)). Thank you, good to know. So in this world every thing is a device and some devices are hosts and some are targets meant to be offloaded to. https://github.com/llvm/llvm-project/pull/137199 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits