From: Johannes Doerfert Date: Thu, 22 Oct 2020 16:36:49 +0000 (-0500) Subject: [OpenMP][CUDA] Add missing overload for `remquo(float,float,int*)` X-Git-Tag: llvmorg-13-init~7943 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b1a90e1599a65bccf9af985603e198af3876b59a;p=platform%2Fupstream%2Fllvm.git [OpenMP][CUDA] Add missing overload for `remquo(float,float,int*)` Reported by Colleen Bertoni after running the OvO test suite: https://github.com/TApplencourt/OvO/ The template overload is still hidden behind an ifdef for OpenMP. In the future we probably want to remove the ifdef but that requires further testing. Reviewed By: JonChesterfield, tra Differential Revision: https://reviews.llvm.org/D89971 --- diff --git a/clang/lib/Headers/__clang_cuda_cmath.h b/clang/lib/Headers/__clang_cuda_cmath.h index f49463d..92f3011 100644 --- a/clang/lib/Headers/__clang_cuda_cmath.h +++ b/clang/lib/Headers/__clang_cuda_cmath.h @@ -174,6 +174,9 @@ __DEVICE__ float sinh(float __x) { return ::sinhf(__x); } __DEVICE__ float sqrt(float __x) { return ::sqrtf(__x); } __DEVICE__ float tan(float __x) { return ::tanf(__x); } __DEVICE__ float tanh(float __x) { return ::tanhf(__x); } +__DEVICE__ float remquo(float __n, float __d, int *__q) { + return ::remquof(__n, __d, __q); +} // Notably missing above is nexttoward. We omit it because // libdevice doesn't provide an implementation, and we don't want to be in the