forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			21 lines
		
	
	
		
			1002 B
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			1002 B
		
	
	
	
		
			C++
		
	
	
	
| #define __CLC_INTRINSIC_DEF(SCALAR_TYPE, BIT_SIZE) \
 | |
| _CLC_OVERLOAD SCALAR_TYPE __CLC_FUNCTION(SCALAR_TYPE x) __asm(__CLC_INTRINSIC ".i" BIT_SIZE); \
 | |
| _CLC_OVERLOAD SCALAR_TYPE##2 __CLC_FUNCTION(SCALAR_TYPE##2 x) __asm(__CLC_INTRINSIC ".v2i" BIT_SIZE); \
 | |
| _CLC_OVERLOAD SCALAR_TYPE##3 __CLC_FUNCTION(SCALAR_TYPE##3 x) __asm(__CLC_INTRINSIC ".v3i" BIT_SIZE); \
 | |
| _CLC_OVERLOAD SCALAR_TYPE##4 __CLC_FUNCTION(SCALAR_TYPE##4 x) __asm(__CLC_INTRINSIC ".v4i" BIT_SIZE); \
 | |
| _CLC_OVERLOAD SCALAR_TYPE##8 __CLC_FUNCTION(SCALAR_TYPE##8 x) __asm(__CLC_INTRINSIC ".v8i" BIT_SIZE); \
 | |
| _CLC_OVERLOAD SCALAR_TYPE##16 __CLC_FUNCTION(SCALAR_TYPE##16 x) __asm(__CLC_INTRINSIC ".v16i" BIT_SIZE);
 | |
| 
 | |
| __CLC_INTRINSIC_DEF(char, "8")
 | |
| __CLC_INTRINSIC_DEF(uchar, "8")
 | |
| __CLC_INTRINSIC_DEF(short, "16")
 | |
| __CLC_INTRINSIC_DEF(ushort, "16")
 | |
| __CLC_INTRINSIC_DEF(int, "32")
 | |
| __CLC_INTRINSIC_DEF(uint, "32")
 | |
| __CLC_INTRINSIC_DEF(long, "64")
 | |
| __CLC_INTRINSIC_DEF(ulong, "64")
 | |
| 
 | |
| #undef __CLC_FUNCTION
 | |
| #undef __CLC_INTRINSIC
 | |
| #undef __CLC_INTRINSIC_DEF
 |