avutil/crc: avoid needless space wastage of hardcoded crc table
authorGanesh Ajjanagadde <gajjanagadde@gmail.com>
Mon, 30 Nov 2015 02:36:52 +0000 (21:36 -0500)
committerGanesh Ajjanagadde <gajjanagadde@gmail.com>
Wed, 2 Dec 2015 23:31:56 +0000 (18:31 -0500)
There was no reason AFAIK for making AV_CRC_24_IEEE 12. This simply
resulted in wasted space under --enable-hardcoded-tables:
dynamic: 1318672 libavutil/libavutil.so.55
old    : 1330680 libavutil/libavutil.so.55
new    : 1326488 libavutil/libavutil.so.55

Minor version number is bumped, with ifdefry due to API breakage.

Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
libavutil/crc.h
libavutil/version.h

index e86bf1d..ef8a713 100644 (file)
@@ -24,6 +24,7 @@
 #include <stdint.h>
 #include <stddef.h>
 #include "attributes.h"
+#include "version.h"
 
 /**
  * @defgroup lavu_crc32 CRC32
@@ -40,7 +41,11 @@ typedef enum {
     AV_CRC_32_IEEE,
     AV_CRC_32_IEEE_LE,  /*< reversed bitorder version of AV_CRC_32_IEEE */
     AV_CRC_16_ANSI_LE,  /*< reversed bitorder version of AV_CRC_16_ANSI */
+#if FF_API_CRC_BIG_TABLE
     AV_CRC_24_IEEE = 12,
+#else
+    AV_CRC_24_IEEE,
+#endif /* FF_API_CRC_BIG_TABLE */
     AV_CRC_MAX,         /*< Not part of public API! Do not use outside libavutil. */
 }AVCRCId;
 
index e0ddfd2..bf0a929 100644 (file)
 #ifndef FF_API_ERROR_FRAME
 #define FF_API_ERROR_FRAME              (LIBAVUTIL_VERSION_MAJOR < 56)
 #endif
+#ifndef FF_API_CRC_BIG_TABLE
+#define FF_API_CRC_BIG_TABLE            (LIBAVUTIL_VERSION_MAJOR < 56)
+#endif
 
 
 /**