⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lzodefs.h

📁 开源的压缩算法 lzo 源码 ,open VPN 就是用这个算法
💻 H
📖 第 1 页 / 共 4 页
字号:
#  define LZO_MM_AHSHIFT      ((unsigned) _AHSHIFT)#elif (LZO_CC_TURBOC && (__TURBOC__ >= 0x0295))   extern void __near __cdecl _AHSHIFT(void);#  define LZO_MM_AHSHIFT      ((unsigned) _AHSHIFT)#elif ((LZO_CC_AZTECC || LZO_CC_PACIFICC || LZO_CC_TURBOC) && LZO_OS_DOS16)#  define LZO_MM_AHSHIFT      12#elif (LZO_CC_WATCOMC)   extern unsigned char _HShift;#  define LZO_MM_AHSHIFT      ((unsigned) _HShift)#else#  error "FIXME - implement LZO_MM_AHSHIFT"#endif#ifdef __cplusplus}#endif#elif (LZO_ARCH_C166)#if !defined(__MODEL__)#  error "FIXME - C166 __MODEL__"#elif ((__MODEL__) == 0)#  define LZO_MM_SMALL          1#elif ((__MODEL__) == 1)#  define LZO_MM_SMALL          1#elif ((__MODEL__) == 2)#  define LZO_MM_LARGE          1#elif ((__MODEL__) == 3)#  define LZO_MM_TINY           1#elif ((__MODEL__) == 4)#  define LZO_MM_XTINY          1#elif ((__MODEL__) == 5)#  define LZO_MM_XSMALL         1#else#  error "FIXME - C166 __MODEL__"#endif#elif (LZO_ARCH_MCS251)#if !defined(__MODEL__)#  error "FIXME - MCS251 __MODEL__"#elif ((__MODEL__) == 0)#  define LZO_MM_SMALL          1#elif ((__MODEL__) == 2)#  define LZO_MM_LARGE          1#elif ((__MODEL__) == 3)#  define LZO_MM_TINY           1#elif ((__MODEL__) == 4)#  define LZO_MM_XTINY          1#elif ((__MODEL__) == 5)#  define LZO_MM_XSMALL         1#else#  error "FIXME - MCS251 __MODEL__"#endif#elif (LZO_ARCH_MCS51)#if !defined(__MODEL__)#  error "FIXME - MCS51 __MODEL__"#elif ((__MODEL__) == 1)#  define LZO_MM_SMALL          1#elif ((__MODEL__) == 2)#  define LZO_MM_LARGE          1#elif ((__MODEL__) == 3)#  define LZO_MM_TINY           1#elif ((__MODEL__) == 4)#  define LZO_MM_XTINY          1#elif ((__MODEL__) == 5)#  define LZO_MM_XSMALL         1#else#  error "FIXME - MCS51 __MODEL__"#endif#else#  define LZO_MM_FLAT           1#endif#if (LZO_MM_FLAT)#  define LZO_INFO_MM           "flat"#elif (LZO_MM_TINY)#  define LZO_INFO_MM           "tiny"#elif (LZO_MM_SMALL)#  define LZO_INFO_MM           "small"#elif (LZO_MM_MEDIUM)#  define LZO_INFO_MM           "medium"#elif (LZO_MM_COMPACT)#  define LZO_INFO_MM           "compact"#elif (LZO_MM_LARGE)#  define LZO_INFO_MM           "large"#elif (LZO_MM_HUGE)#  define LZO_INFO_MM           "huge"#else#  error "unknown memory model"#endif#endif#if defined(SIZEOF_SHORT)#  define LZO_SIZEOF_SHORT          (SIZEOF_SHORT)#endif#if defined(SIZEOF_INT)#  define LZO_SIZEOF_INT            (SIZEOF_INT)#endif#if defined(SIZEOF_LONG)#  define LZO_SIZEOF_LONG           (SIZEOF_LONG)#endif#if defined(SIZEOF_LONG_LONG)#  define LZO_SIZEOF_LONG_LONG      (SIZEOF_LONG_LONG)#endif#if defined(SIZEOF___INT16)#  define LZO_SIZEOF___INT16        (SIZEOF___INT16)#endif#if defined(SIZEOF___INT32)#  define LZO_SIZEOF___INT32        (SIZEOF___INT32)#endif#if defined(SIZEOF___INT64)#  define LZO_SIZEOF___INT64        (SIZEOF___INT64)#endif#if defined(SIZEOF_VOID_P)#  define LZO_SIZEOF_VOID_P         (SIZEOF_VOID_P)#endif#if defined(SIZEOF_SIZE_T)#  define LZO_SIZEOF_SIZE_T         (SIZEOF_SIZE_T)#endif#if defined(SIZEOF_PTRDIFF_T)#  define LZO_SIZEOF_PTRDIFF_T      (SIZEOF_PTRDIFF_T)#endif#define __LZO_LSR(x,b)    (((x)+0ul) >> (b))#if !defined(LZO_SIZEOF_SHORT)#  if (USHRT_MAX == LZO_0xffffL)#    define LZO_SIZEOF_SHORT        2#  elif (__LZO_LSR(USHRT_MAX,7) == 1)#    define LZO_SIZEOF_SHORT        1#  elif (__LZO_LSR(USHRT_MAX,15) == 1)#    define LZO_SIZEOF_SHORT        2#  elif (__LZO_LSR(USHRT_MAX,31) == 1)#    define LZO_SIZEOF_SHORT        4#  elif (__LZO_LSR(USHRT_MAX,63) == 1)#    define LZO_SIZEOF_SHORT        8#  elif (__LZO_LSR(USHRT_MAX,127) == 1)#    define LZO_SIZEOF_SHORT        16#  else#    error "LZO_SIZEOF_SHORT"#  endif#endif#if !defined(LZO_SIZEOF_INT)#  if (UINT_MAX == LZO_0xffffL)#    define LZO_SIZEOF_INT          2#  elif (UINT_MAX == LZO_0xffffffffL)#    define LZO_SIZEOF_INT          4#  elif (__LZO_LSR(UINT_MAX,7) == 1)#    define LZO_SIZEOF_INT          1#  elif (__LZO_LSR(UINT_MAX,15) == 1)#    define LZO_SIZEOF_INT          2#  elif (__LZO_LSR(UINT_MAX,31) == 1)#    define LZO_SIZEOF_INT          4#  elif (__LZO_LSR(UINT_MAX,63) == 1)#    define LZO_SIZEOF_INT          8#  elif (__LZO_LSR(UINT_MAX,127) == 1)#    define LZO_SIZEOF_INT          16#  else#    error "LZO_SIZEOF_INT"#  endif#endif#if !defined(LZO_SIZEOF_LONG)#  if (ULONG_MAX == LZO_0xffffffffL)#    define LZO_SIZEOF_LONG         4#  elif (__LZO_LSR(ULONG_MAX,7) == 1)#    define LZO_SIZEOF_LONG         1#  elif (__LZO_LSR(ULONG_MAX,15) == 1)#    define LZO_SIZEOF_LONG         2#  elif (__LZO_LSR(ULONG_MAX,31) == 1)#    define LZO_SIZEOF_LONG         4#  elif (__LZO_LSR(ULONG_MAX,63) == 1)#    define LZO_SIZEOF_LONG         8#  elif (__LZO_LSR(ULONG_MAX,127) == 1)#    define LZO_SIZEOF_LONG         16#  else#    error "LZO_SIZEOF_LONG"#  endif#endif#if !defined(LZO_SIZEOF_LONG_LONG) && !defined(LZO_SIZEOF___INT64)#if (LZO_SIZEOF_LONG > 0 && LZO_SIZEOF_LONG < 8)#  if defined(__LONG_MAX__) && defined(__LONG_LONG_MAX__)#    if (LZO_CC_GNUC >= 0x030300ul)#      if ((__LONG_MAX__)+0 == (__LONG_LONG_MAX__)+0)#        define LZO_SIZEOF_LONG_LONG      LZO_SIZEOF_LONG#      endif#    endif#  endif#endif#endif#if !defined(LZO_SIZEOF_LONG_LONG) && !defined(LZO_SIZEOF___INT64)#if (LZO_SIZEOF_LONG > 0 && LZO_SIZEOF_LONG < 8)#if (LZO_ARCH_I086 && LZO_CC_DMC)#elif (LZO_CC_CILLY) && defined(__GNUC__)#  define LZO_SIZEOF_LONG_LONG      8#elif (LZO_CC_GNUC || LZO_CC_LLVM || LZO_CC_PATHSCALE)#  define LZO_SIZEOF_LONG_LONG      8#elif ((LZO_OS_WIN32 || LZO_OS_WIN64) && LZO_CC_MSC && (_MSC_VER >= 1400))#  define LZO_SIZEOF_LONG_LONG      8#elif (LZO_OS_WIN64)#  define LZO_SIZEOF___INT64        8#elif (LZO_ARCH_I386 && (LZO_CC_DMC))#  define LZO_SIZEOF_LONG_LONG      8#elif (LZO_ARCH_I386 && (LZO_CC_SYMANTECC && (__SC__ >= 0x700)))#  define LZO_SIZEOF_LONG_LONG      8#elif (LZO_ARCH_I386 && (LZO_CC_INTELC && defined(__linux__)))#  define LZO_SIZEOF_LONG_LONG      8#elif (LZO_ARCH_I386 && (LZO_CC_MWERKS || LZO_CC_PELLESC || LZO_CC_PGI))#  define LZO_SIZEOF_LONG_LONG      8#elif (LZO_ARCH_I386 && (LZO_CC_INTELC || LZO_CC_MSC))#  define LZO_SIZEOF___INT64        8#elif (LZO_OS_WIN32 && (LZO_CC_MSC))#  define LZO_SIZEOF___INT64        8#elif (LZO_ARCH_I386 && (LZO_CC_BORLANDC && (__BORLANDC__ >= 0x0520)))#  define LZO_SIZEOF___INT64        8#elif (LZO_ARCH_I386 && (LZO_CC_WATCOMC && (__WATCOMC__ >= 1100)))#  define LZO_SIZEOF___INT64        8#elif (LZO_CC_WATCOMC && defined(_INTEGRAL_MAX_BITS) && (_INTEGRAL_MAX_BITS == 64))#  define LZO_SIZEOF___INT64        8#elif (LZO_OS_OS400) && defined(__LLP64_IFC__)#  define LZO_SIZEOF_LONG_LONG      8#elif (defined(__vms) || defined(__VMS)) && (__INITIAL_POINTER_SIZE+0 == 64)#  define LZO_SIZEOF_LONG_LONG      8#elif (LZO_CC_SDCC) && (LZO_SIZEOF_INT == 2)#elif 1 && defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)#  define LZO_SIZEOF_LONG_LONG      8#endif#endif#endif#if defined(__cplusplus) && defined(LZO_CC_GNUC)#  if (LZO_CC_GNUC < 0x020800ul)#    undef LZO_SIZEOF_LONG_LONG#  endif#endif#if defined(LZO_CFG_NO_LONG_LONG) || defined(__NO_LONG_LONG)#  undef LZO_SIZEOF_LONG_LONG#endif#if !defined(LZO_SIZEOF_VOID_P)#if (LZO_ARCH_I086)#  define __LZO_WORDSIZE            2#  if (LZO_MM_TINY || LZO_MM_SMALL || LZO_MM_MEDIUM)#    define LZO_SIZEOF_VOID_P       2#  elif (LZO_MM_COMPACT || LZO_MM_LARGE || LZO_MM_HUGE)#    define LZO_SIZEOF_VOID_P       4#  else#    error "LZO_MM"#  endif#elif (LZO_ARCH_AVR || LZO_ARCH_Z80)#  define __LZO_WORDSIZE            1#  define LZO_SIZEOF_VOID_P         2#elif (LZO_ARCH_C166 || LZO_ARCH_MCS51 || LZO_ARCH_MCS251 || LZO_ARCH_MSP430)#  define LZO_SIZEOF_VOID_P         2#elif (LZO_ARCH_H8300)#  if defined(__NORMAL_MODE__)#    define __LZO_WORDSIZE          4#    define LZO_SIZEOF_VOID_P       2#  elif defined(__H8300H__) || defined(__H8300S__) || defined(__H8300SX__)#    define __LZO_WORDSIZE          4#    define LZO_SIZEOF_VOID_P       4#  else#    define __LZO_WORDSIZE          2#    define LZO_SIZEOF_VOID_P       2#  endif#  if (LZO_CC_GNUC && (LZO_CC_GNUC < 0x040000ul)) && (LZO_SIZEOF_INT == 4)#    define LZO_SIZEOF_SIZE_T       LZO_SIZEOF_INT#    define LZO_SIZEOF_PTRDIFF_T    LZO_SIZEOF_INT#  endif#elif (LZO_ARCH_M16C)#  define __LZO_WORDSIZE            2#  if defined(__m32c_cpu__) || defined(__m32cm_cpu__)#    define LZO_SIZEOF_VOID_P       4#  else#    define LZO_SIZEOF_VOID_P       2#  endif#elif (LZO_SIZEOF_LONG == 8) && ((defined(__mips__) && defined(__R5900__)) || defined(__MIPS_PSX2__))#  define __LZO_WORDSIZE            8#  define LZO_SIZEOF_VOID_P         4#elif defined(__LLP64__) || defined(__LLP64) || defined(_LLP64) || defined(_WIN64)#  define __LZO_WORDSIZE            8#  define LZO_SIZEOF_VOID_P         8#elif (LZO_OS_OS400) && defined(__LLP64_IFC__)#  define LZO_SIZEOF_VOID_P         LZO_SIZEOF_LONG#  define LZO_SIZEOF_SIZE_T         LZO_SIZEOF_LONG#  define LZO_SIZEOF_PTRDIFF_T      LZO_SIZEOF_LONG#elif (LZO_OS_OS400)#  define __LZO_WORDSIZE            LZO_SIZEOF_LONG#  define LZO_SIZEOF_VOID_P         16#  define LZO_SIZEOF_SIZE_T         LZO_SIZEOF_LONG#  define LZO_SIZEOF_PTRDIFF_T      LZO_SIZEOF_LONG#elif (defined(__vms) || defined(__VMS)) && (__INITIAL_POINTER_SIZE+0 == 64)#  define LZO_SIZEOF_VOID_P         8#  define LZO_SIZEOF_SIZE_T         LZO_SIZEOF_LONG#  define LZO_SIZEOF_PTRDIFF_T      LZO_SIZEOF_LONG#else#  define LZO_SIZEOF_VOID_P         LZO_SIZEOF_LONG#endif#endif#if !defined(LZO_WORDSIZE)#  if defined(__LZO_WORDSIZE)#    define LZO_WORDSIZE            __LZO_WORDSIZE#  else#    define LZO_WORDSIZE            LZO_SIZEOF_VOID_P#  endif#endif#if !defined(LZO_SIZEOF_SIZE_T)#if (LZO_ARCH_I086 || LZO_ARCH_M16C)#  define LZO_SIZEOF_SIZE_T         2#else#  define LZO_SIZEOF_SIZE_T         LZO_SIZEOF_VOID_P#endif#endif#if !defined(LZO_SIZEOF_PTRDIFF_T)#if (LZO_ARCH_I086)#  if (LZO_MM_TINY || LZO_MM_SMALL || LZO_MM_MEDIUM || LZO_MM_HUGE)#    define LZO_SIZEOF_PTRDIFF_T    LZO_SIZEOF_VOID_P#  elif (LZO_MM_COMPACT || LZO_MM_LARGE)#    if (LZO_CC_BORLANDC || LZO_CC_TURBOC)#      define LZO_SIZEOF_PTRDIFF_T  4#    else#      define LZO_SIZEOF_PTRDIFF_T  2#    endif#  else#    error "LZO_MM"#  endif#else#  define LZO_SIZEOF_PTRDIFF_T      LZO_SIZEOF_SIZE_T#endif#endif#if !defined(LZO_ABI_BIG_ENDIAN) && !defined(LZO_ABI_LITTLE_ENDIAN) && !defined(LZO_ABI_NEUTRAL_ENDIAN)#if (LZO_ARCH_AMD64 || LZO_ARCH_CRIS || LZO_ARCH_I086 || LZO_ARCH_I386 || LZO_ARCH_MSP430)#  define LZO_ABI_LITTLE_ENDIAN     1#elif (LZO_ARCH_M68K || LZO_ARCH_S390)#  define LZO_ABI_BIG_ENDIAN        1#elif 1 && defined(__BIG_ENDIAN__) && !defined(__LITTLE_ENDIAN__)#  define LZO_ABI_BIG_ENDIAN        1#elif 1 && defined(__LITTLE_ENDIAN__) && !defined(__BIG_ENDIAN__)#  define LZO_ABI_LITTLE_ENDIAN     1#elif 1 && (LZO_ARCH_MIPS) && defined(__MIPSEB__) && !defined(__MIPSEL__)#  define LZO_ABI_BIG_ENDIAN        1#elif 1 && (LZO_ARCH_MIPS) && defined(__MIPSEL__) && !defined(__MIPSEB__)#  define LZO_ABI_LITTLE_ENDIAN     1#endif#endif#if defined(LZO_ABI_BIG_ENDIAN) && defined(LZO_ABI_LITTLE_ENDIAN)#  error "this should not happen"#endif#if defined(LZO_ABI_BIG_ENDIAN)#  define LZO_INFO_ABI_ENDIAN       "be"#elif defined(LZO_ABI_LITTLE_ENDIAN)#  define LZO_INFO_ABI_ENDIAN       "le"#elif defined(LZO_ABI_NEUTRAL_ENDIAN)#  define LZO_INFO_ABI_ENDIAN       "neutral"#endif#if (LZO_SIZEOF_INT == 1 && LZO_SIZEOF_LONG == 2 && LZO_SIZEOF_VOID_P == 2)#  define LZO_ABI_I8LP16         1#  define LZO_INFO_ABI_PM       "i8lp16"#elif (LZO_SIZEOF_INT == 2 && LZO_SIZEOF_LONG == 2 && LZO_SIZEOF_VOID_P == 2)#  define LZO_ABI_ILP16         1#  define LZO_INFO_ABI_PM       "ilp16"#elif (LZO_SIZEOF_INT == 4 && LZO_SIZEOF_LONG == 4 && LZO_SIZEOF_VOID_P == 4)#  define LZO_ABI_ILP32         1#  define LZO_INFO_ABI_PM       "ilp32"#elif (LZO_SIZEOF_INT == 4 && LZO_SIZEOF_LONG == 4 && LZO_SIZEOF_VOID_P == 8 && LZO_SIZEOF_SIZE_T == 8)#  define LZO_ABI_LLP64         1#  define LZO_INFO_ABI_PM       "llp64"#elif (LZO_SIZEOF_INT == 4 && LZO_SIZEOF_LONG == 8 && LZO_SIZEOF_VOID_P == 8)#  define LZO_ABI_LP64          1#  define LZO_INFO_ABI_PM       "lp64"#elif (LZO_SIZEOF_INT == 8 && LZO_SIZEOF_LONG == 8 && LZO_SIZEOF_VOID_P == 8)#  define LZO_ABI_ILP64         1#  define LZO_INFO_ABI_PM       "ilp64"#elif (LZO_SIZEOF_INT == 4 && LZO_SIZEOF_LONG == 8 && LZO_SIZEOF_VOID_P == 4)#  define LZO_ABI_IP32L64       1#  define LZO_INFO_ABI_PM       "ip32l64"#endif#if !defined(__LZO_LIBC_OVERRIDE)#if defined(LZO_LIBC_NAKED)#  define LZO_INFO_LIBC         "naked"#elif defined(LZO_LIBC_FREESTANDING)#  define LZO_INFO_LIBC         "freestanding"#elif defined(LZO_LIBC_MOSTLY_FREESTANDING)#  define LZO_INFO_LIBC         "mfreestanding"#elif defined(LZO_LIBC_ISOC90)#  define LZO_INFO_LIBC         "isoc90"#elif defined(LZO_LIBC_ISOC99)#  define LZO_INFO_LIBC         "isoc99"#elif defined(__dietlibc__)#  define LZO_LIBC_DIETLIBC     1#  define LZO_INFO_LIBC         "dietlibc"#elif defined(_NEWLIB_VERSION)#  define LZO_LIBC_NEWLIB       1#  define LZO_INFO_LIBC         "newlib"#elif defined(__UCLIBC__) && defined(__UCLIBC_MAJOR__) && defined(__UCLIBC_MINOR__)#  if defined(__UCLIBC_SUBLEVEL__)#    define LZO_LIBC_UCLIBC     (__UCLIBC_MAJOR__ * 0x10000L + __UCLIBC_MINOR__ * 0x100 + __UCLIBC_SUBLEVEL__)#  else

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -