This patch creates new bitcode libraries to be used when compiling for
the device. They define math function wrappers that first transform the
generic __omp_sin calls to original math function's name. Then we
transform the math function to the device specific __nv_sin. This
level of indirection was necessy all to avoid the declarations in
<math.h> that are not compatible with the device.
Depends on D121466
clang-format: please reformat the code