clang  7.0.0svn
Macros | Functions
__clang_cuda_intrinsics.h File Reference

Go to the source code of this file.

Macros

#define __SM_30_INTRINSICS_H__
 
#define __SM_30_INTRINSICS_HPP__
 
#define __MAKE_SHUFFLES(__FnName, __IntIntrinsic, __FloatIntrinsic, __Mask, __Type)
 
#define __SM_32_INTRINSICS_H__
 
#define __SM_32_INTRINSICS_HPP__
 

Functions

 __MAKE_SHUFFLES (__shfl, __nvvm_shfl_idx_i32, __nvvm_shfl_idx_f32, 0x1f, int)
 
 __MAKE_SHUFFLES (__shfl_up, __nvvm_shfl_up_i32, __nvvm_shfl_up_f32, 0, unsigned int)
 
 __MAKE_SHUFFLES (__shfl_down, __nvvm_shfl_down_i32, __nvvm_shfl_down_f32, 0x1f, unsigned int)
 
 __MAKE_SHUFFLES (__shfl_xor, __nvvm_shfl_bfly_i32, __nvvm_shfl_bfly_f32, 0x1f, int)
 
__device__ char __ldg (const char *ptr)
 
__device__ short __ldg (const short *ptr)
 
__device__ int __ldg (const int *ptr)
 
__device__ long __ldg (const long *ptr)
 
__device__ long long __ldg (const long long *ptr)
 
__device__ unsigned char __ldg (const unsigned char *ptr)
 
__device__ signed char __ldg (const signed char *ptr)
 
__device__ unsigned short __ldg (const unsigned short *ptr)
 
__device__ unsigned int __ldg (const unsigned int *ptr)
 
__device__ unsigned long __ldg (const unsigned long *ptr)
 
__device__ unsigned long long __ldg (const unsigned long long *ptr)
 
__device__ float __ldg (const float *ptr)
 
__device__ double __ldg (const double *ptr)
 
__device__ char2 __ldg (const char2 *ptr)
 
__device__ char4 __ldg (const char4 *ptr)
 
__device__ short2 __ldg (const short2 *ptr)
 
__device__ short4 __ldg (const short4 *ptr)
 
__device__ int2 __ldg (const int2 *ptr)
 
__device__ int4 __ldg (const int4 *ptr)
 
__device__ longlong2 __ldg (const longlong2 *ptr)
 
__device__ uchar2 __ldg (const uchar2 *ptr)
 
__device__ uchar4 __ldg (const uchar4 *ptr)
 
__device__ ushort2 __ldg (const ushort2 *ptr)
 
__device__ ushort4 __ldg (const ushort4 *ptr)
 
__device__ uint2 __ldg (const uint2 *ptr)
 
__device__ uint4 __ldg (const uint4 *ptr)
 
__device__ ulonglong2 __ldg (const ulonglong2 *ptr)
 
__device__ float2 __ldg (const float2 *ptr)
 
__device__ float4 __ldg (const float4 *ptr)
 
__device__ double2 __ldg (const double2 *ptr)
 
__device__ unsigned __funnelshift_l (unsigned low32, unsigned high32, unsigned shiftWidth)
 
__device__ unsigned __funnelshift_lc (unsigned low32, unsigned high32, unsigned shiftWidth)
 
__device__ unsigned __funnelshift_r (unsigned low32, unsigned high32, unsigned shiftWidth)
 
__device__ unsigned __funnelshift_rc (unsigned low32, unsigned high32, unsigned shiftWidth)
 

Macro Definition Documentation

◆ __MAKE_SHUFFLES

#define __MAKE_SHUFFLES (   __FnName,
  __IntIntrinsic,
  __FloatIntrinsic,
  __Mask,
  __Type 
)

Definition at line 37 of file __clang_cuda_intrinsics.h.

◆ __SM_30_INTRINSICS_H__

#define __SM_30_INTRINSICS_H__

Definition at line 31 of file __clang_cuda_intrinsics.h.

◆ __SM_30_INTRINSICS_HPP__

#define __SM_30_INTRINSICS_HPP__

Definition at line 32 of file __clang_cuda_intrinsics.h.

◆ __SM_32_INTRINSICS_H__

#define __SM_32_INTRINSICS_H__

Definition at line 265 of file __clang_cuda_intrinsics.h.

◆ __SM_32_INTRINSICS_HPP__

#define __SM_32_INTRINSICS_HPP__

Definition at line 266 of file __clang_cuda_intrinsics.h.

Function Documentation

◆ __funnelshift_l()

__device__ unsigned __funnelshift_l ( unsigned  low32,
unsigned  high32,
unsigned  shiftWidth 
)
inline

Definition at line 457 of file __clang_cuda_intrinsics.h.

◆ __funnelshift_lc()

__device__ unsigned __funnelshift_lc ( unsigned  low32,
unsigned  high32,
unsigned  shiftWidth 
)
inline

Definition at line 465 of file __clang_cuda_intrinsics.h.

◆ __funnelshift_r()

__device__ unsigned __funnelshift_r ( unsigned  low32,
unsigned  high32,
unsigned  shiftWidth 
)
inline

Definition at line 473 of file __clang_cuda_intrinsics.h.

◆ __funnelshift_rc()

__device__ unsigned __funnelshift_rc ( unsigned  low32,
unsigned  high32,
unsigned  shiftWidth 
)
inline

Definition at line 481 of file __clang_cuda_intrinsics.h.

◆ __ldg() [1/30]

__device__ char __ldg ( const char *  ptr)
inline

Definition at line 270 of file __clang_cuda_intrinsics.h.

◆ __ldg() [2/30]

__device__ short __ldg ( const short *  ptr)
inline

Definition at line 271 of file __clang_cuda_intrinsics.h.

◆ __ldg() [3/30]

__device__ int __ldg ( const int *  ptr)
inline

Definition at line 272 of file __clang_cuda_intrinsics.h.

◆ __ldg() [4/30]

__device__ long __ldg ( const long *  ptr)
inline

Definition at line 273 of file __clang_cuda_intrinsics.h.

◆ __ldg() [5/30]

__device__ long long __ldg ( const long long *  ptr)
inline

Definition at line 274 of file __clang_cuda_intrinsics.h.

◆ __ldg() [6/30]

__device__ unsigned char __ldg ( const unsigned char *  ptr)
inline

Definition at line 277 of file __clang_cuda_intrinsics.h.

◆ __ldg() [7/30]

__device__ signed char __ldg ( const signed char *  ptr)
inline

Definition at line 280 of file __clang_cuda_intrinsics.h.

◆ __ldg() [8/30]

__device__ unsigned short __ldg ( const unsigned short *  ptr)
inline

Definition at line 283 of file __clang_cuda_intrinsics.h.

◆ __ldg() [9/30]

__device__ unsigned int __ldg ( const unsigned int *  ptr)
inline

Definition at line 286 of file __clang_cuda_intrinsics.h.

◆ __ldg() [10/30]

__device__ unsigned long __ldg ( const unsigned long *  ptr)
inline

Definition at line 289 of file __clang_cuda_intrinsics.h.

◆ __ldg() [11/30]

__device__ unsigned long long __ldg ( const unsigned long long *  ptr)
inline

Definition at line 292 of file __clang_cuda_intrinsics.h.

◆ __ldg() [12/30]

__device__ float __ldg ( const float *  ptr)
inline

Definition at line 295 of file __clang_cuda_intrinsics.h.

◆ __ldg() [13/30]

__device__ double __ldg ( const double *  ptr)
inline

Definition at line 296 of file __clang_cuda_intrinsics.h.

◆ __ldg() [14/30]

__device__ char2 __ldg ( const char2 *  ptr)
inline

Definition at line 298 of file __clang_cuda_intrinsics.h.

◆ __ldg() [15/30]

__device__ char4 __ldg ( const char4 *  ptr)
inline

Definition at line 309 of file __clang_cuda_intrinsics.h.

◆ __ldg() [16/30]

__device__ short2 __ldg ( const short2 *  ptr)
inline

Definition at line 319 of file __clang_cuda_intrinsics.h.

◆ __ldg() [17/30]

__device__ short4 __ldg ( const short4 *  ptr)
inline

Definition at line 327 of file __clang_cuda_intrinsics.h.

◆ __ldg() [18/30]

__device__ int2 __ldg ( const int2 *  ptr)
inline

Definition at line 337 of file __clang_cuda_intrinsics.h.

◆ __ldg() [19/30]

__device__ int4 __ldg ( const int4 *  ptr)
inline

Definition at line 345 of file __clang_cuda_intrinsics.h.

◆ __ldg() [20/30]

__device__ longlong2 __ldg ( const longlong2 *  ptr)
inline

Definition at line 355 of file __clang_cuda_intrinsics.h.

◆ __ldg() [21/30]

__device__ uchar2 __ldg ( const uchar2 *  ptr)
inline

Definition at line 364 of file __clang_cuda_intrinsics.h.

◆ __ldg() [22/30]

__device__ uchar4 __ldg ( const uchar4 *  ptr)
inline

Definition at line 372 of file __clang_cuda_intrinsics.h.

◆ __ldg() [23/30]

__device__ ushort2 __ldg ( const ushort2 *  ptr)
inline

Definition at line 382 of file __clang_cuda_intrinsics.h.

◆ __ldg() [24/30]

__device__ ushort4 __ldg ( const ushort4 *  ptr)
inline

Definition at line 390 of file __clang_cuda_intrinsics.h.

◆ __ldg() [25/30]

__device__ uint2 __ldg ( const uint2 *  ptr)
inline

Definition at line 400 of file __clang_cuda_intrinsics.h.

◆ __ldg() [26/30]

__device__ uint4 __ldg ( const uint4 *  ptr)
inline

Definition at line 408 of file __clang_cuda_intrinsics.h.

◆ __ldg() [27/30]

__device__ ulonglong2 __ldg ( const ulonglong2 *  ptr)
inline

Definition at line 418 of file __clang_cuda_intrinsics.h.

◆ __ldg() [28/30]

__device__ float2 __ldg ( const float2 *  ptr)
inline

Definition at line 427 of file __clang_cuda_intrinsics.h.

◆ __ldg() [29/30]

__device__ float4 __ldg ( const float4 *  ptr)
inline

Definition at line 435 of file __clang_cuda_intrinsics.h.

◆ __ldg() [30/30]

__device__ double2 __ldg ( const double2 *  ptr)
inline

Definition at line 445 of file __clang_cuda_intrinsics.h.

◆ __MAKE_SHUFFLES() [1/4]

__MAKE_SHUFFLES ( __shfl  ,
__nvvm_shfl_idx_i32  ,
__nvvm_shfl_idx_f32  ,
0x1f  ,
int   
)

◆ __MAKE_SHUFFLES() [2/4]

__MAKE_SHUFFLES ( __shfl_up  ,
__nvvm_shfl_up_i32  ,
__nvvm_shfl_up_f32  ,
,
unsigned  int 
)

◆ __MAKE_SHUFFLES() [3/4]

__MAKE_SHUFFLES ( __shfl_down  ,
__nvvm_shfl_down_i32  ,
__nvvm_shfl_down_f32  ,
0x1f  ,
unsigned  int 
)

◆ __MAKE_SHUFFLES() [4/4]

__MAKE_SHUFFLES ( __shfl_xor  ,
__nvvm_shfl_bfly_i32  ,
__nvvm_shfl_bfly_f32  ,
0x1f  ,
int   
)