forked from OSchip/llvm-project
f4d3cb4ca8
Add mapping for CUDA address spaces for HIP to SPIR-V translation. This change allows HIP device code to be emitted as valid SPIR-V by mapping unqualified pointers to generic address space and by mapping __device__ and __shared__ AS to their equivalent AS in SPIR-V (CrossWorkgroup and Workgroup, respectively). Cuda's __constant__ AS is handled specially. In HIP unqualified pointers (aka "flat" pointers) can point to __constant__ objects. Mapping this AS to ConstantMemory would produce to illegal address space casts to generic AS. Therefore, __constant__ AS is mapped to CrossWorkgroup. Patch by linjamaki (Henry Linjamäki)! Differential Revision: https://reviews.llvm.org/D108621 |
||
---|---|---|
.. | ||
half.hip | ||
hipspv-addr-spaces.cpp | ||
lit.local.cfg | ||
printf-aggregate.cpp | ||
printf.cpp |