|  | #ifdef __CLC_SCALAR | 
|  | #define __CLC_VECSIZE | 
|  | #endif | 
|  |  | 
|  | #if __CLC_FPSIZE == 64 | 
|  | _CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE nan(__CLC_XCONCAT(ulong, __CLC_VECSIZE) code) | 
|  | { | 
|  | return __CLC_AS_GENTYPE(code | 0x7ff0000000000000ul); | 
|  | } | 
|  | #elif __CLC_FPSIZE == 32 | 
|  | _CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE nan(__CLC_XCONCAT(uint, __CLC_VECSIZE) code) | 
|  | { | 
|  | return __CLC_AS_GENTYPE(code | 0x7fc00000); | 
|  | } | 
|  | #elif __CLC_FPSIZE == 16 | 
|  | _CLC_OVERLOAD _CLC_DEF __CLC_GENTYPE nan(__CLC_XCONCAT(ushort, __CLC_VECSIZE) code) | 
|  | { | 
|  | const ushort mask = 0x7e00; | 
|  | const __CLC_XCONCAT(ushort, __CLC_VECSIZE) res = code | mask; | 
|  | return __CLC_AS_GENTYPE(res); | 
|  | } | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #ifdef __CLC_SCALAR | 
|  | #undef __CLC_VECSIZE | 
|  | #endif |