Cpu Features Versions Save

A cross platform C99 library to get cpu features at runtime.

v0.9.0

8 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/google/cpu_features/compare/v0.8.0...v0.9.0

v0.8.0

1 year ago

New features / Enhancements

  • [enhancement] Added some missing amd uarch #259
  • [enhancement] add amd piledriver 0x10 model #255
  • [enhancement] Add detection LZCNT #254
  • [enhancement] add windows ssse3,sse4_1,sse4_2 detection for non avx path #251
  • [enhancement] add comet lake unit test #248 #250
  • [enhancement] add comet lake support #248 #249
  • [enhancement] Add AMD ZEN 4 uarch and update detection #243
  • [enhancement] Added some MIPS features. #241
  • [enhancement] add amd cato #267
  • [enhancement] add mobile core flavor #266
  • [enhancement] Add AVX_VNNI support #264
  • [enhancement] add intel Tremont microarch #262
  • [enhancement] add CometLake model 166 #261
  • [enhancement] test enum macro consistency #257
  • [enhancement] add intel goldmont plus #256
  • [enhancement] Added CPU_FEATURES_COMPILED_MIPS_MIPS3D. #240
  • [enhancement] S390X Support #274
  • [enhancement] Add support for detecting Intel CascadeLake CPUs #271
  • [enhancement] Add Mendocino ZEN2 detection #305
  • [enhancement] Add Raptor Lake-P and Raptor Lake-HX/S detection #300
  • [enhancement] Add Windows Arm64 support #291
  • [enhancement] Add RISCV vector extension #289
  • [enhancement] Support risc-v #287
  • [enhancement] Add Intel Raptor Lake uarch detection #283
  • [enhancement] Add REP instructions detection #282
  • [enhancement] Add X86 MOVDIRI/MOVDIR64B detection #281
  • [enhancement] Add X86 GFNI detection #280
  • [enhancement] add x86/avx512_fp16 detection #279
  • [enhancement] Add AMD ZEN4 Raphael detection #277
  • [enhancement] Add install doc (Fix #238) #239
  • [enhancement] Update AArch64 features to Linux 5.17. #237

Misc

  • [misc] remove internal FillX86BrandString usage #258
  • [misc] Add macros for RISCV hwcaps. #246
  • [misc] Add macros for RISCV features #244
  • [misc] Replace hardcoded values ​​to constants for X86 tests. #265
  • [misc] Move CI table to main README.md, update badge generation script #235
  • [misc] Move ci folder and make naming more consistent #233
  • [misc] ci: Add bazel jobs #232
  • [misc] Improve the release process #231
  • [misc] Replace hardcoded cache type value to enum type for X86 tests #270
  • [misc] Get rid repeated branch #269
  • [misc] Include tests when using QEMU #288
  • [misc] Improve CI (Aarch64, Power) #285
  • [misc] Use textual_hdrs for bazel instead of hdrs #276

v0.7.0

2 years ago

API Change

  • [API Change] [x86] Embed brand_string and mark FillX86BrandString as deprecated #214
  • [API Change] New code layout - breaking change in cpu_features_macros.h #194

New features / Enhancements

  • [enhancement][cmake] Use of CMAKE_POSITION_INDEPENDENT_CODE instead of BUILD_PIC #188
  • [enhancement] Add support for ZHAOXIN CPU #218
  • [enhancement] Fix a getauxval comment and expand the Krait idiv workaround #206
  • [enhancement] Update AArch64 features to Linux 5.10 #149
  • [enhancement] Detect Zen 3 (K19) cpus #152
  • [enhancement] Detect AVX512 on Darwin use GetDarwinSysCtlByName("hw.optional.avx512f") #153
  • [enhancement] Detect Intel's Multi-Precision Add-Carry Instruction Extensions #157
  • [enhancement] CPU features for AMD #165
  • [enhancement] Update uarch detection for Intel processors #184
  • [enhancement] Add cache info for new AMD CPUs (0x8000001D) #171
  • [enhancement] [NFC] Add bazel support to cpu_features #222
  • [enhancement] Add support for FreeBSD on x86 #163
  • [enhancement][cmake] cmake: use CTest default #170

Bug Fixes

  • [bug] Fix list_cpu_features.exe does not detect SSE42 on Xeon X5650 (Windows) #220
  • [bug] replace sse3 detection with pni when reading /proc/cpuinfo #225
  • [bug][cmake] CMake: add BUNDLE DESTINATION to fix cross-build to iOS/watchOS/tvOS #177
  • [bug] Fix C++ namespace in README #156
  • [bug] Avoid leaking internal headers for ppc #164
  • [bug] github/workflows: fix install clang-format to use clang-extra-tools pkg #155
  • [bug] Fix include paths in BUILD #226
  • [bug] Fix arm64 detection precedence in CMakeLists.txt #209
  • [bug] cmake: Fix test enabling for ndk_compat #195
  • [bug] Fixes #185 #187
  • [bug] Fixes wrong cache detection of old processors #183
  • [bug] Fix windows amd64 ci #223
  • [bug][cmake] Fix: CMake googletest-download failed #202
  • [bug] Fix #140 Atom processor detected as X86_UNKNOWN #160

Misc

  • [cleanup] fix: Return default value from ‘GetCacheTypeString’ #162
  • [cleanup] [NFC][x86] Read all cpuid leaves at once #213
  • [cleanup] Update README.md #193
  • [cleanup] ci: Migrate FreeBSD to macos-10.15 virtual env #191
  • [cleanup] Set CTest output on failure #189
  • [cleanup] [NFC] Change implementation of FillX86BrandString #181
  • [cleanup] Showcase community bindings #180
  • [cleanup] [NFC] refactor the code so it's easier to understand the execution flow #161
  • [cleanup] Rename 'master' branch into 'main' #219
  • [cleanup] Provides a release script #142
  • [cleanup] [NFC] Fix const cast #174
  • [cleanup] ci: Migrate to github actions #192
  • [cleanup] ci: Add docker containers to run toolchain jobs from various hosts #196
  • [cleanup] ci: Add GitHub workflows #166
  • [cleanup] ci: Add FreeBSD GitHub workflows #167
  • [cleanup] Update README.md (Fix #175) #176
  • [cleanup] Update gitignore #173

v0.6.0

3 years ago
  • [bug] SSSE3, SSE4.1, SSE4.2 not detected on non-AVX CPUs #4

v0.5.0

3 years ago
  • [enhancement] Detect future Intel AVX/AMX features #128
  • [enhancement] Add support for Tiger Lake and Sapphire rapids Intel microarchitectures #127
  • [enhancement] Update features for AArch64 to Linux 5.8 #126
  • [enhancement] AVX-512 FMA count detection #120
  • [bug] CMake find_package() version mismatch #118
  • [enhancement] Add C++ namespace to docs #117
  • [bug] Fatal error: 'cpu-features.h' file not found #106
  • [bug] no member named 'vfpv' in 'ArmFeatures' when compiling ndk_compat for arm #96

v0.4.1

4 years ago
  • [bug] Missing header for cpu_features_cache_info.h #91
  • [bug] cpu_features does not build on BSD #89

v0.4.0

4 years ago
  • [enhancement] Add missing X86 features #87
  • [enhancement] Completed missing ARM features #86

v0.3.0

5 years ago
  • [bug] Link failure under centos 6 for the shared lib #65
  • [bug] Mips implementation is buggy #59
  • [enhancement] Add an easy way to migrate from the Android NDK #47
  • [bug] Unable to build this on ARMv7 server #46
  • [closed] Unable to build this on macOS #45
  • [closed] How to compile this as a shared library ? #44