[all-commits] [llvm/llvm-project] fb44b9: [OpenCL][CUDA][HIP][SYCL] Add norecurse
Yaxun (Sam) Liu via All-commits
all-commits at lists.llvm.org
Sun Feb 16 17:52:36 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: fb44b9db95a333efdfa9a33ddc1778f97428f5f5
https://github.com/llvm/llvm-project/commit/fb44b9db95a333efdfa9a33ddc1778f97428f5f5
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2020-02-16 (Sun, 16 Feb 2020)
Changed paths:
M clang/lib/CodeGen/CodeGenFunction.cpp
A clang/test/CodeGenCUDA/norecurse.cu
M clang/test/CodeGenCUDA/propagate-metadata.cu
M clang/test/CodeGenOpenCL/amdgpu-attrs.cl
A clang/test/CodeGenOpenCL/norecurse.cl
A clang/test/SemaCUDA/call-kernel-from-kernel.cu
Log Message:
-----------
[OpenCL][CUDA][HIP][SYCL] Add norecurse
norecurse function attr indicates the function is not called recursively
directly or indirectly.
Add norecurse to OpenCL functions, SYCL functions in device compilation
and CUDA/HIP kernels.
Although there is LLVM pass adding norecurse to functions, it only works
for whole-program compilation. Also FE adding norecurse can make that
pass run faster since functions with norecurse do not need to be checked
again.
Differential Revision: https://reviews.llvm.org/D73651
More information about the All-commits
mailing list