1
0
mirror of https://github.com/google/cpu_features.git synced 2025-04-28 15:33:37 +02:00

243 Commits

Author SHA1 Message Date
Guillaume Chatelet
f96d5f74d4 NFC remove reference to libc memory functions 2021-10-28 11:56:57 +00:00
Guillaume Chatelet
deb2a61b80
New code layout - breaking change in cpu_features_macros.h (#194)
This commit helps with platform code separation (fixes #3). It should also help with the build as we can simply include all `impl_*.c` files regardless of OS / arch.

Note: this patch contains breaking changes in `include/cpu_features_macros.h`
 - `CPU_FEATURES_OS_LINUX_OR_ANDROID` does not exist anymore
 - `CPU_FEATURES_OS_FREEBSD`, `CPU_FEATURES_OS_ANDROID` and `CPU_FEATURES_OS_LINUX` are now mutually exclusive (i.e. `CPU_FEATURES_OS_ANDROID` does not imply `CPU_FEATURES_OS_LINUX`)
 - `CPU_FEATURES_OS_DARWIN` has been renamed into `CPU_FEATURES_OS_MACOS` to be able to target non-Mac Apple products (IOS, TV, WATCH). They are now targetable with `CPU_FEATURES_OS_IPHONE`. This matches Apple naming convention described in [this stackoverflow](https://stackoverflow.com/a/49560690).
2021-10-28 13:52:46 +02:00
Guillaume Chatelet
0dd8b41eca
Update README.md (#193)
Change `Quickstart` section to match new default value for testing.
2021-10-27 14:48:47 +02:00
Corentin Le Molgat
8e5c298d1d Update README.md 2021-10-27 13:24:05 +02:00
Mizux Seiha
06abc90b45 ci: Fix windows workflow filename 2021-10-27 13:24:05 +02:00
Mizux Seiha
9178459627 ci: Drop use of Travis-CI and Appveyor 2021-10-27 13:24:05 +02:00
Corentin Le Molgat
a707bef49d cmake: Fix enabling ndk_compat 2021-10-27 13:22:49 +02:00
Guillaume Chatelet
c5659bf16f Override CacheInfo only if new data is available via Deterministic Cache Parameters Leaf
#190
2021-10-26 15:21:27 +00:00
Mizux
5d871e7569
ci: Migrate FreeBSD to macos-10.15 virtual env (#191)
note: In preparation to https://github.com/actions/virtual-environments/issues/4060
which will drop Vagrant/VirtualBox

ref: https://github.com/actions/virtual-environments/pull/4010
2021-10-26 16:01:14 +02:00
Guillaume Chatelet
7bd206a75f Fix memory overflow
Duplicate of #190
2021-10-26 13:58:42 +00:00
Guillaume Chatelet
55ac9f0556
Set CTest output on failure (#189) 2021-10-26 15:08:38 +02:00
Corentin Le Molgat
d4252660a2 ci(github): Add workflows 2021-10-26 11:42:29 +00:00
Corentin Le Molgat
440452e9a3 ci(travis): adapt it to the new run_integration.sh 2021-10-26 11:42:29 +00:00
Corentin Le Molgat
8971bf0b0e tools: Rework cross compilation scripts
- Use stderr for issues
- Add usage to run_integration.sh (-h or --help)
- deduce toolchain and qemu config from TARGET
- Bump QEMU from 2.11.1 to 5.2.0
  - fix qemu build on Archlinux
- Bump Linaro:
    toolchain 7.2-2017.11 -> 7.5-2019.12
    sysroot 2.25-2017.11 -> 2.25-2019.12
- Bump codescape from 2017.10-08 to 2020.06-01
  - migrate from mips-r2-hard to mips-r6-hard
2021-10-26 11:42:29 +00:00
Corentin Le Molgat
239c2e5660 ci(appveyor): Add VS 2019 job 2021-10-26 11:42:29 +00:00
Corentin Le Molgat
0f07e4b9eb .gitignore: Add build_cross/
note: Used by scripts/*.sh
2021-10-26 11:42:29 +00:00
Corentin Le Molgat
545b2e84ec cmake: Use of CMAKE_POSITION_INDEPENDENT_CODE instead of BUILD_PIC (Fix #143) 2021-10-25 12:01:38 +00:00
Guillaume Chatelet
769287c384
Fixes #185 (#187)
Missing `string_view` header and invalid `_Static_assert` statement
2021-10-25 09:48:46 +02:00
Guillaume Chatelet
cf589a2844
[NFC] Change implementation of FillX86BrandString (#181) 2021-10-21 10:51:00 +02:00
Guillaume Chatelet
32b49eb5e7
Fixes wrong cache detection of old processors (#183) 2021-10-20 17:02:52 +02:00
Guillaume Chatelet
4a81f3756e [NFC] encapsulate fake cpu instance in x86 test 2021-10-20 08:15:44 +00:00
Guillaume Chatelet
b324a7043c
Showcase community bindings (#180) 2021-10-18 15:53:02 +02:00
Nikolay Hohsadze
0925f6953c
Add cache info for new AMD CPUs (0x8000001D) (#171) 2021-10-18 14:14:29 +02:00
SpaceIm
2939ece4d2
add BUNDLE DESTINATION (#177)
required for installation of executable target if cross-build to iOS/tvOS/watchOS
see https://cmake.org/cmake/help/latest/policy/CMP0006.html
2021-10-18 13:29:39 +02:00
Guillaume Chatelet
f70dc46cd5
Add separator to CpuFeatures_StringView_HasWord (#174) 2021-10-18 12:52:14 +02:00
Mizux
628c50e92d
Update README.md (#176) 2021-07-07 16:25:58 +02:00
Nikolay Hohsadze
dcac7d3844
Update gitignore (#173) 2021-07-06 11:14:20 +02:00
Guillaume Chatelet
b003173331
Fix broken table in README.md 2021-07-02 17:33:54 +02:00
Guillaume Chatelet
119943707c
Add support for FreeBSD on x86 (#163) 2021-07-02 15:37:03 +02:00
Mizux
06fdc0aa1d
cmake: Use CTest default (Fix #169) (#170)
note: this is the default behaviour when using include(CTest)
2021-06-30 15:15:01 +02:00
Mizux
38213bd010
ci: Add FreeBSD GitHub workflows (#167)
First step to fixing #158 : add a CI for FreeBSD.
2021-06-30 15:02:23 +02:00
Nikolay Hohsadze
5492c4c561
CPU features for AMD (#165) 2021-06-30 12:38:56 +02:00
Guillaume Chatelet
b3ef4ef49d
Avoid leaking internal headers for ppc (#164) 2021-06-30 11:51:26 +02:00
Kris Kwiatkowski
001faefdc3
fix: Return default value from ‘GetCacheTypeString’ (#162)
The build fails with following message when -Werror
and -Werror=return-type are enabled.

In function ‘GetCacheTypeString’:
	error: control reaches end of non-void function [-Werror=return-type]

Simple fix is to return explicitly communicate to
the compiler that certain block is not reachable.
2021-06-25 10:28:26 +02:00
Guillaume Chatelet
646b80fa3a
[NFC] refactor the code so it's easier to understand the execution flow (#161) 2021-06-23 14:21:05 +00:00
Guillaume Chatelet
40ef93802f Remove leftover WORKSPACE file 2021-06-23 14:09:25 +00:00
Guillaume Chatelet
108f3d9eca
Fix #140 Atom processor detected as X86_UNKNOWN (#160) 2021-06-22 11:12:02 +02:00
Koichi Shiraishi
bc2846e78f
Detect AVX512 on Darwin use GetDarwinSysCtlByName("hw.optional.avx512f") (#153) 2021-05-21 11:14:50 +02:00
Kris Kwiatkowski
d35e2f38eb
Detect Intel's Multi-Precision Add-Carry Instruction Extensions (#157) 2021-05-21 10:47:32 +02:00
Guillaume Klein
3e8243b7d9 Fix C++ namespace in README
The correct namespace is `cpu_features` as defined in 3cc8f310d9/include/cpu_features_macros.h (L108).
2021-04-12 10:40:04 +02:00
Koichi Shiraishi
3c7149f22d github/workflows: fix install clang-format to use clang-extra-tools pkg 2021-04-07 08:47:46 +02:00
natanbc
7ed0b0e50e
Detect Zen 3 (K19) cpus (#152)
Co-authored-by: natanbc <natanbc@users.noreply.github.com>
2021-02-25 21:47:39 +01:00
Tamas Zsoldos
e2f6dea65f
Update AArch64 features to Linux 5.10 (#149)
Added feature: MTE.
2020-12-15 13:28:53 +01:00
Guillaume Chatelet
6d0767e0d9
Provides a release script (#142)
Fixes #141
2020-10-16 11:44:56 +00:00
Guillaume Chatelet
a8397ba459
Bump version to v0.6.0 v0.6.0 2020-10-15 11:09:51 +02:00
Guillaume Chatelet
cdab59af76
[NFC] Simplify build by removing inl files. (#139) 2020-10-13 13:05:04 +02:00
Guillaume Chatelet
9a8f04b24c
[NFC] Generate separate tables via macro (#137)
This is a non functional change, it allows:
 - Getting rid of `unix_features_aggregator`
 - Have a single blob describing the features
 - Fix wrong mocking of `hwcaps`

Downside: abuse of macros makes the code slightly magical and harder to understand.
It think it's still an improvement over the current situation as there's less repetition and less chances to get something wrong.
2020-10-12 09:50:35 +00:00
Guillaume Chatelet
3cc8f310d9 [NFC] Update copyright from Google Inc. to Google LLC 2020-10-12 08:55:20 +00:00
Tim Gates
c0885fec9b
docs: fix simple typo, intented -> intended (#138)
There is a small typo in src/utils/list_cpu_features.c.

Should read `intended` rather than `intented`.
2020-10-12 07:20:05 +00:00
Guillaume Chatelet
7f62ff67c8
Excluding deleted files from clang-format Check 2020-10-12 07:18:05 +00:00