Skip to content
Nathan Moinvaziri edited this page Mar 10, 2021 · 1 revision

The compiler options for configure and CMake can be found in the README.md.

Compiler Defines

  • UNALIGNED_OK - This enables optimizations for CPUs where unaligned access of memory is OK. This is safe for most modern systems, and gives a slight improvement in performance.
  • UNALIGNED64_OK - This enables optimizations for CPUS where 64-bit unaligned memory access is OK. This is safe for most modern systems, and gives a slight improvement in performance.
  • UNROLL_MORE - This makes crc32 and adler32 unroll more of the code. This is slower on most modern systems due to the code becoming bigger.
  • X86_NOCHECK_SSE2 - Assume SSE2 instructions are allowed. This optimizes away the runtime cpuid check for SSE2 availability. This is always safe on x86_64 since SSE2 is mandatory.