Skip to content

primecount-7.12

Compare
Choose a tag to compare
@kimwalisch kimwalisch released this 02 Apr 19:31
· 123 commits to master since this release

This is a bug-fix release, the previous primecount-7.11 may cause an infinite loop when calculating the logarithmic integral on the i386 CPU architecture (x86 32-bit CPU using Linux and GNU glibc). The C/C++ API and ABI of this release are backwards compatible with the previous release.

  • LogarithmicIntegral.cpp: Fix infinite loop on Linux i386 #66.
  • RiemannR.cpp: Fix infinite loop on Linux i386 #66.
  • CMakeLists.txt: Remove WITH_POPCNT=OFF option used to build a portable primecount binary. primecount is now portable by default (on x86 CPUs primecount now checks using CPUID if the CPU supports the POPCNT instruction before using it).
  • popcnt.hpp: On x86 & x64 CPUs enable CPUID POPCNT runtime check by default (unless the user compiles with -mpopcnt).
  • LoadBalancerAC.cpp: New dynamic adaptive load balancing #67.
  • RiemannR.cpp: Faster and simpler RiemannR_inverse(x).
  • test/Li.cpp: Add more tests.
  • test/Riemann_R.cpp: Add more tests.
  • fast_div.hpp: Get rid of make_smaller<T>::type hack.