diff options
author | Justin Lebar <jlebar@google.com> | 2016-06-30 18:41:33 +0000 |
---|---|---|
committer | Justin Lebar <jlebar@google.com> | 2016-06-30 18:41:33 +0000 |
commit | 27ee130e3818f39a8ecffd5d1212c52e1411feda (patch) | |
tree | 21908c1058960e498b3c45174a772ff968b390f0 /clang/test/CodeGenCUDA | |
parent | cc4bb63351e527682d13a0b06a3ff3e32eaa1c37 (diff) | |
download | bcm5719-llvm-27ee130e3818f39a8ecffd5d1212c52e1411feda.tar.gz bcm5719-llvm-27ee130e3818f39a8ecffd5d1212c52e1411feda.zip |
[CUDA] Give templated device functions internal linkage, templated kernels external linkage.
Summary:
This lets LLVM perform IPO over these functions. In particular, it
allows LLVM to emit ld.global.nc for loads to __restrict pointers in
kernels that are never written to.
Reviewers: rsmith
Subscribers: cfe-commits, tra
Differential Revision: http://reviews.llvm.org/D21337
llvm-svn: 274261
Diffstat (limited to 'clang/test/CodeGenCUDA')
-rw-r--r-- | clang/test/CodeGenCUDA/ptx-kernels.cu | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/test/CodeGenCUDA/ptx-kernels.cu b/clang/test/CodeGenCUDA/ptx-kernels.cu index 034cef6b60f..1d330bdf6a4 100644 --- a/clang/test/CodeGenCUDA/ptx-kernels.cu +++ b/clang/test/CodeGenCUDA/ptx-kernels.cu @@ -19,11 +19,11 @@ __global__ void global_function() { // Make sure host-instantiated kernels are preserved on device side. template <typename T> __global__ void templated_kernel(T param) {} -// CHECK-DAG: define weak_odr void @_Z16templated_kernelIiEvT_( +// CHECK-DAG: define void @_Z16templated_kernelIiEvT_( namespace { __global__ void anonymous_ns_kernel() {} -// CHECK-DAG: define weak_odr void @_ZN12_GLOBAL__N_119anonymous_ns_kernelEv( +// CHECK-DAG: define void @_ZN12_GLOBAL__N_119anonymous_ns_kernelEv( } void host_function() { |