TurboPFor: Variable byte encode/decode
This commit is contained in:
3
vint.c
3
vint.c
@ -200,8 +200,9 @@ unsigned TEMPLATE2(vbzgeteq, USIZE)(unsigned char **__restrict in, unsigned n, u
|
||||
#endif
|
||||
|
||||
unsigned char *TEMPLATE2(VBDENC, USIZE)(uint_t *__restrict in, unsigned n, unsigned char *__restrict out, uint_t start) {
|
||||
unsigned char *op = out; if(!n) return out;
|
||||
unsigned char *op = out;
|
||||
uint_t *ip, b=0,v;
|
||||
if(!n) return out;
|
||||
#define VBDE { v = (*ip)-start-VDELTA; start = *ip++; TEMPLATE2(_vbput, USIZE)(op, v, ;); b |= (v /*^ x*/); }
|
||||
for(ip = in; ip != in + (n&~(UN-1)); ) { VBDE;VBDE;VBDE;VBDE;
|
||||
#if UN > 4
|
||||
|
Reference in New Issue
Block a user