TurboPFor: Bit Pack SIMD include

This commit is contained in:
x
2017-01-08 11:48:09 +01:00
parent 0bd8feb0de
commit ab2522317b

View File

@ -1996,3 +1996,41 @@
BITBLK128V32_64(ip, 31, op, parm); IPPE(ip); OPPE(op += 64*4/sizeof(op[0]));\
}
#define BITPACK128V32(__pip, __nbits, __pop, __parm) { __m128i *__ip=(__m128i *)__pip,*__op=(__m128i *)__pop;\
switch(__nbits) {\
case 0: break;\
case 1:{ BITPACK128V32_1( __ip, __op, __parm); } break;\
case 2:{ BITPACK128V32_2( __ip, __op, __parm); } break;\
case 3:{ BITPACK128V32_3( __ip, __op, __parm); } break;\
case 4:{ BITPACK128V32_4( __ip, __op, __parm); } break;\
case 5:{ BITPACK128V32_5( __ip, __op, __parm); } break;\
case 6:{ BITPACK128V32_6( __ip, __op, __parm); } break;\
case 7:{ BITPACK128V32_7( __ip, __op, __parm); } break;\
case 8:{ BITPACK128V32_8( __ip, __op, __parm); } break;\
case 9:{ BITPACK128V32_9( __ip, __op, __parm); } break;\
case 10:{ BITPACK128V32_10(__ip, __op, __parm); } break;\
case 11:{ BITPACK128V32_11(__ip, __op, __parm); } break;\
case 12:{ BITPACK128V32_12(__ip, __op, __parm); } break;\
case 13:{ BITPACK128V32_13(__ip, __op, __parm); } break;\
case 14:{ BITPACK128V32_14(__ip, __op, __parm); } break;\
case 15:{ BITPACK128V32_15(__ip, __op, __parm); } break;\
case 16:{ BITPACK128V32_16(__ip, __op, __parm); } break;\
case 17:{ BITPACK128V32_17(__ip, __op, __parm); } break;\
case 18:{ BITPACK128V32_18(__ip, __op, __parm); } break;\
case 19:{ BITPACK128V32_19(__ip, __op, __parm); } break;\
case 20:{ BITPACK128V32_20(__ip, __op, __parm); } break;\
case 21:{ BITPACK128V32_21(__ip, __op, __parm); } break;\
case 22:{ BITPACK128V32_22(__ip, __op, __parm); } break;\
case 23:{ BITPACK128V32_23(__ip, __op, __parm); } break;\
case 24:{ BITPACK128V32_24(__ip, __op, __parm); } break;\
case 25:{ BITPACK128V32_25(__ip, __op, __parm); } break;\
case 26:{ BITPACK128V32_26(__ip, __op, __parm); } break;\
case 27:{ BITPACK128V32_27(__ip, __op, __parm); } break;\
case 28:{ BITPACK128V32_28(__ip, __op, __parm); } break;\
case 29:{ BITPACK128V32_29(__ip, __op, __parm); } break;\
case 30:{ BITPACK128V32_30(__ip, __op, __parm); } break;\
case 31:{ BITPACK128V32_31(__ip, __op, __parm); } break;\
case 32:{ BITPACK128V32_32(__ip, __op, __parm); } break;\
}\
}