TurboPFor: Bit Unpacking
This commit is contained in:
12
bitunpack.c
12
bitunpack.c
@ -34,7 +34,7 @@
|
||||
//-----------------------------------------------------------------------------------------------------------------
|
||||
#define DSTI(__op)
|
||||
#define BPI(__w, __x, __parm) __w
|
||||
#include __FILE__
|
||||
#include "bitunpack.c"
|
||||
unsigned char *bitunpack32( const unsigned char *__restrict in, unsigned n, unsigned *__restrict out , unsigned b) { const unsigned char *ip = in+PAD8(n*b); BITUNPACK32(in, n, b, out, 0); return (unsigned char *)ip; }
|
||||
unsigned char *bitunpack16( const unsigned char *__restrict in, unsigned n, unsigned short *__restrict out , unsigned b) { const unsigned char *ip = in+PAD8(n*b); BITUNPACK32(in, n, b, out, 0); return (unsigned char *)ip; }
|
||||
unsigned char *bitunpack64( const unsigned char *__restrict in, unsigned n, uint64_t *__restrict out , unsigned b) { const unsigned char *ip = in+PAD8(n*b); BITUNPACK64(in, n, b, out, 0); return (unsigned char *)ip; }
|
||||
@ -43,7 +43,7 @@ unsigned char *bitunpack64( const unsigned char *__restrict in, unsigned n, uin
|
||||
//-----------------------------------------------------------------------------------------------------------------
|
||||
#define DSTI(__op)
|
||||
#define BPI(__w, __x, __parm) (__parm += (__w) + 1)
|
||||
#include __FILE__
|
||||
#include "bitunpack.c"
|
||||
unsigned char *bitd1unpack32(const unsigned char *__restrict in, unsigned n, unsigned *__restrict out, unsigned start, unsigned b) { const unsigned char *ip = in+PAD8(n*b); BITUNPACK32(in, n, b, out, start); return (unsigned char *)ip; }
|
||||
unsigned char *bitd1unpack16(const unsigned char *__restrict in, unsigned n, unsigned short *__restrict out, unsigned start, unsigned b) { const unsigned char *ip = in+PAD8(n*b); BITUNPACK32(in, n, b, out, start); return (unsigned char *)ip; }
|
||||
#undef BPI
|
||||
@ -52,7 +52,7 @@ unsigned char *bitd1unpack16(const unsigned char *__restrict in, unsigned n, uns
|
||||
//------------------------------------------------------------------------------------------
|
||||
#define DSTI(__op)
|
||||
#define BPI(__w, __x, __parm) (__parm += (__w))
|
||||
#include __FILE__
|
||||
#include "bitunpack.c"
|
||||
unsigned char *bitdunpack32( const unsigned char *__restrict in, unsigned n, unsigned *__restrict out, unsigned start, unsigned b) { const unsigned char *ip = in+PAD8(n*b); BITUNPACK32(in, n, b, out, start); return (unsigned char *)ip; }
|
||||
unsigned char *bitdunpack16( const unsigned char *__restrict in, unsigned n, unsigned short *__restrict out, unsigned start, unsigned b) { const unsigned char *ip = in+PAD8(n*b); BITUNPACK32(in, n, b, out, start); return (unsigned char *)ip; }
|
||||
#undef BPI
|
||||
@ -62,7 +62,7 @@ unsigned char *bitdunpack16( const unsigned char *__restrict in, unsigned n, uns
|
||||
//------------------------------------------------------------------------------------------
|
||||
#define DSTI(__op)
|
||||
#define BPI(__w, __x, __parm) (__parm += zigzagdec32(__w))
|
||||
#include __FILE__
|
||||
#include "bitunpack.c"
|
||||
unsigned char *bitzunpack32( const unsigned char *__restrict in, unsigned n, unsigned *__restrict out, unsigned start, unsigned b) { const unsigned char *ip = in+PAD8(n*b); BITUNPACK32(in, n, b, out, start); return (unsigned char *)ip; }
|
||||
//unsigned char *bitzunpack16( const unsigned char *__restrict in, unsigned n, unsigned short *__restrict out, unsigned start, unsigned b) { unsigned char *ip = in+PAD8(n*b); BITUNPACK32(in, n, b, out, start); return ip; }
|
||||
#undef BPI
|
||||
@ -71,7 +71,7 @@ unsigned char *bitzunpack32( const unsigned char *__restrict in, unsigned n, uns
|
||||
//------------------------------------------------------------------------------------------
|
||||
#define DSTI(__op)
|
||||
#define BPI(__w, __x, __parm) (__parm + (__w))
|
||||
#include __FILE__
|
||||
#include "bitunpack.c"
|
||||
|
||||
unsigned char *bitfunpack32( const unsigned char *__restrict in, unsigned n, unsigned *__restrict out, unsigned start, unsigned b) { const unsigned char *ip = in+PAD8(n*b); BITUNPACK32(in, n, b, out, start); return (unsigned char *)ip; }
|
||||
unsigned char *bitfunpack16( const unsigned char *__restrict in, unsigned n, unsigned short *__restrict out, unsigned start, unsigned b) { const unsigned char *ip = in+PAD8(n*b); BITUNPACK32(in, n, b, out, start); return (unsigned char *)ip; }
|
||||
@ -81,7 +81,7 @@ unsigned char *bitfunpack16( const unsigned char *__restrict in, unsigned n, uns
|
||||
//------------------------------------------------------------------------------------------
|
||||
#define DSTI(__op) start += 32
|
||||
#define BPI(__w, __x, __parm) (__parm + (__w)+__x+1)
|
||||
#include __FILE__
|
||||
#include "bitunpack.c"
|
||||
unsigned char *bitf1unpack32(const unsigned char *__restrict in, unsigned n, unsigned *__restrict out, unsigned start, unsigned b) { const unsigned char *ip = in+PAD8(n*b); BITUNPACK32(in, n, b, out, start); return (unsigned char *)ip; }
|
||||
unsigned char *bitf1unpack16(const unsigned char *__restrict in, unsigned n, unsigned short *__restrict out, unsigned start, unsigned b) { const unsigned char *ip = in+PAD8(n*b); BITUNPACK32(in, n, b, out, start); return (unsigned char *)ip; }
|
||||
#undef BPI
|
||||
|
||||
Reference in New Issue
Block a user