[PATCH] D77240: [CUDA] Add missing cmath overloads

Artem Belevich via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 1 16:21:08 PDT 2020


tra added a comment.

We do have a problem. With your patch I see a lot of errors about function redefinitions conflicting with the ones in CUDA's `math_functions.hpp`:

E.g:

  In file included from <built-in>:1:
  In file included from /usr/local/google/home/tra/work/llvm/build/release+assert+zapcc/lib/clang/11.0.0/include/__clang_cuda_runtime_wrapper.h:398:
  /usr/local/google/home/tra/work/llvm/build/release+assert+zapcc/lib/clang/11.0.0/include/__clang_cuda_cmath.h:60:18: error: redefinition of 'acosh'
  __DEVICE__ float acosh(float __x) { return ::acoshf(__x); }
                   ^
  /usr/local/google/home/tra/local/cuda-10.0/include/crt/math_functions.hpp:624:31: note: previous definition is here
  __MATH_FUNCTIONS_DECL__ float acosh(float a)

Full list of conflicting functions in CUDA 9.0, 10.0, 10.1, 10.2

  redefinition of 'acosh'
  redefinition of 'asinh'
  redefinition of 'atanh'
  redefinition of 'cbrt'
  redefinition of 'erf'
  redefinition of 'erfc'
  redefinition of 'exp2'
  redefinition of 'expm1'
  redefinition of 'fdim'
  redefinition of 'hypot'
  redefinition of 'ilogb'
  redefinition of 'lgamma'
  redefinition of 'llrint'
  redefinition of 'llround'
  redefinition of 'log1p'
  redefinition of 'log2'
  redefinition of 'logb'
  redefinition of 'lrint'
  redefinition of 'lround'


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D77240/new/

https://reviews.llvm.org/D77240





More information about the cfe-commits mailing list