From fb1203b54768e8a9b843e20efaa505bd85b360d0 Mon Sep 17 00:00:00 2001 From: powturbo Date: Thu, 29 Jun 2017 10:21:34 +0200 Subject: [PATCH] TurboPFor: Bit Unpacking --- bitunpack.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/bitunpack.c b/bitunpack.c index d910c9c..608643b 100644 --- a/bitunpack.c +++ b/bitunpack.c @@ -28,6 +28,10 @@ #include "vint.h" #define PAD8(_x_) (((_x_)+7)/8) +#pragma warning( disable : 4005) +#pragma warning( disable : 4090) +#pragma warning( disable : 4068) + #pragma GCC push_options #pragma GCC optimize ("align-functions=16") #pragma clang diagnostic push @@ -85,7 +89,7 @@ typedef unsigned char *(*BITUNPACK_D64)(const unsigned char *__restrict in, unsi #define BITNUNPACK(in, n, out, csize, usize) {\ unsigned char *ip = in;\ - for(op = out,out+=n; op < out;) { unsigned oplen = out - op,b; if(oplen > csize) oplen = csize; __builtin_prefetch(in+512);\ + for(op = out,out+=n; op < out;) { unsigned oplen = out - op,b; if(oplen > csize) oplen = csize; __builtin_prefetch(in+512,0);\ b = *ip++; ip = TEMPLATE2(bitunpacka, usize)[b](ip, oplen, op);\ op += oplen;\ } \