pgfortran compiling my CUDA Fortran code is ignoring the operator *^* while it says *pow* cannot be used in device kernel (allowed only in emulation mode).

I found conflicting information about support for math funcitons

PGI Webpage says

Q Does the compiler support IEEE standard-floating point arithmetic?

A The GPU accelerators available today support most of the IEEE floating-point standard. However, they do not support all the rounding modes, and some operations, notably square root, exponential, logarithm, and other transcendental functions, may not deliver full precision results. >

This is a hardware limitation> that compilers cannot overcome.

But http://developer.download.nvidia.com/compute/cuda/4_2/rel/toolkit/docs/online/group__CUDA__MATH__DOUBLE.html page from NVIDIA seems to have support for the said functions.

Can somebody shed more light about how to use math functionalities in device kernels?

Thanks.