updated fse version
feature minor refactoring (removing FSE_abs())
also : fix a few minor issues recently introduced in examples
diff --git a/lib/common/entropy_common.c b/lib/common/entropy_common.c
index 83fd971..72bc398 100644
--- a/lib/common/entropy_common.c
+++ b/lib/common/entropy_common.c
@@ -44,6 +44,12 @@
/*-****************************************
+* Version
+******************************************/
+unsigned FSE_versionNumber(void) { return FSE_VERSION_NUMBER; }
+
+
+/*-****************************************
* FSE Error Management
******************************************/
unsigned FSE_isError(size_t code) { return ERR_isError(code); }
@@ -62,8 +68,6 @@
/*-**************************************************************
* FSE NCount encoding-decoding
****************************************************************/
-static short FSE_abs(short a) { return (short)(a<0 ? -a : a); }
-
size_t FSE_readNCount (short* normalizedCounter, unsigned* maxSVPtr, unsigned* tableLogPtr,
const void* headerBuffer, size_t hbSize)
{
@@ -117,21 +121,21 @@
} else {
bitStream >>= 2;
} }
- { short const max = (short)((2*threshold-1)-remaining);
- short count;
+ { int const max = (2*threshold-1) - remaining;
+ int count;
if ((bitStream & (threshold-1)) < (U32)max) {
- count = (short)(bitStream & (threshold-1));
- bitCount += nbBits-1;
+ count = bitStream & (threshold-1);
+ bitCount += nbBits-1;
} else {
- count = (short)(bitStream & (2*threshold-1));
+ count = bitStream & (2*threshold-1);
if (count >= threshold) count -= max;
- bitCount += nbBits;
+ bitCount += nbBits;
}
count--; /* extra accuracy */
- remaining -= FSE_abs(count);
- normalizedCounter[charnum++] = count;
+ remaining -= count < 0 ? -count : count; /* -1 means +1 */
+ normalizedCounter[charnum++] = (short)count;
previous0 = !count;
while (remaining < threshold) {
nbBits--;