> +_CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE exp(__CLC_GENTYPE val) { > + // exp(x) = exp2(x) * log2(e) This identity doesn't look right to me. Here's a counter example x=0 exp(0) ≠ exp2(0) * log2(e) 1≠ log2(e) I think the correct identity is exp(x) == exp2(x * log2(e)) Thanks, Dan.