diff options
author | Justin Lebar <jlebar@google.com> | 2016-01-23 21:28:14 +0000 |
---|---|---|
committer | Justin Lebar <jlebar@google.com> | 2016-01-23 21:28:14 +0000 |
commit | 3039a593db6f013c374d25b715a56e6098bfe17f (patch) | |
tree | ca83ab20af1fc04b6c6cf0c4f62b32ab5f1ef0ad /clang/lib/Headers/__clang_cuda_runtime_wrapper.h | |
parent | a8f0254bc1a4bdb3061d033cb5b9a3997bfc9a98 (diff) | |
download | bcm5719-llvm-3039a593db6f013c374d25b715a56e6098bfe17f.tar.gz bcm5719-llvm-3039a593db6f013c374d25b715a56e6098bfe17f.zip |
[CUDA] Make printf work.
Summary:
The code in CGCUDACall is largely based on a patch written by Eli
Bendersky:
http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20140324/210218.html
That patch implemented an LLVM pass lowering printf to vprintf; this
one does something similar, but in Clang codegen.
Reviewers: echristo
Subscribers: cfe-commits, jhen, tra, majnemer
Differential Revision: http://reviews.llvm.org/D16372
llvm-svn: 258642
Diffstat (limited to 'clang/lib/Headers/__clang_cuda_runtime_wrapper.h')
-rw-r--r-- | clang/lib/Headers/__clang_cuda_runtime_wrapper.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/Headers/__clang_cuda_runtime_wrapper.h b/clang/lib/Headers/__clang_cuda_runtime_wrapper.h index 8e5f0331cb3..b2585f423f7 100644 --- a/clang/lib/Headers/__clang_cuda_runtime_wrapper.h +++ b/clang/lib/Headers/__clang_cuda_runtime_wrapper.h @@ -210,6 +210,11 @@ extern "C" __device__ __attribute__((const)) int __nvvm_reflect(const void *); static __device__ __attribute__((used)) int __nvvm_reflect_anchor() { return __nvvm_reflect("NONE"); } + +// The nvptx vprintf syscall. This doesn't actually need to be declared, but we +// declare it so that if someone else declares it with a different signature, +// we'll throw an error. +extern "C" __device__ int vprintf(const char*, const char*); #endif #endif // __CUDA__ |