forked from OSchip/llvm-project
c18e9ecd4f
__hipRegisterFunction and __hipRegisterVar need to accept device side kernel and variable names so that HIP runtime can associate kernel stub functions in host code with kernel symbols in fat binaries, and associate shadow variables in host code with device variables in fat binaries. Currently, clang assumes kernel functions and device variables have the same name as the kernel stub functions and shadow variables. However, when host is compiled in windows with MSVC C++ ABI and device is compiled with Itanium C++ ABI (e.g. AMDGPU), kernels and device symbols in fat binary are mangled differently than host. This patch gets the device side kernel and variable name by mangling them in the mangle context of aux target. Differential Revision: https://reviews.llvm.org/D58163 llvm-svn: 354004 |
||
---|---|---|
.. | ||
Inputs | ||
address-spaces.cu | ||
alias.cu | ||
amdgpu-kernel-attrs.cu | ||
builtins-amdgcn.cu | ||
convergent.cu | ||
cuda-builtin-vars.cu | ||
debug-info-address-class.cu | ||
device-stub.cu | ||
device-var-init.cu | ||
device-vtable.cu | ||
filter-decl.cu | ||
flush-denormals.cu | ||
fp-contract.cu | ||
function-overload.cu | ||
kernel-amdgcn.cu | ||
kernel-args-alignment.cu | ||
kernel-args.cu | ||
kernel-call.cu | ||
launch-bounds.cu | ||
library-builtin.cu | ||
link-device-bitcode.cu | ||
llvm-used.cu | ||
nothrow.cu | ||
printf-aggregate.cu | ||
printf.cu | ||
propagate-metadata.cu | ||
ptx-kernels.cu | ||
types.cu | ||
usual-deallocators.cu |