Guillaume Chatelet
2f5a7bf80a
Rename 'master' branch into 'main' ( #219 )
2022-01-24 16:01:45 +01:00
Guillaume Chatelet
149916384b
[x86] Embed brand_string and mark FillX86BrandString as deprecated ( #214 )
2022-01-14 17:20:31 +01:00
Guillaume Chatelet
aa642e573e
[NFC] Avoid polluting global scope
2022-01-14 16:06:30 +00:00
Guillaume Chatelet
5ed8ef4bbe
[NFC][x86] Read all cpuid leaves at once ( #213 )
...
This patch reads the most important cpuid leaves and stores the data in
a struct. A followup patch will inline micro architecture detection and
brand string inside X86Info so we don't have to call `ReadLeaves` multiple
times. This wil allow further simplification of `HasSecondFMA` and help
fix https://github.com/google/cpu_features/issues/200 .
2022-01-14 14:14:07 +01:00
Guillaume Chatelet
69d39934e8
Fix arm64 detection precedence in CMakeLists.txt ( #209 )
...
Fixes #179
2021-11-30 10:45:28 +01:00
Guillaume Chatelet
9d34e6a1c8
Fix #205
...
Since buffers are a few tens of bytes there is no need for optimized memfunctions. For compile time sizes, the compiler will generate optimal code already.
2021-11-22 16:50:29 +00:00
Mykola Hohsdze
fc52c64ebc
fix googletest download
2021-11-16 09:20:01 +01:00
Guillaume Chatelet
ebcdfcaeff
Fix missing header
2021-10-29 13:54:41 +00:00
Guillaume Chatelet
f69a25811f
make copy and equals inline headers
2021-10-29 12:41:43 +00:00
Guillaume Chatelet
990c55c50f
Silence unsused parameters
2021-10-29 10:48:52 +00:00
Guillaume Chatelet
6fd9a8ca58
Make getter/setter static so they don't leak
2021-10-29 10:47:01 +00:00
Guillaume Chatelet
400d4f2836
Fix CpuFeatures_memchr to actually use the provided size argument
2021-10-29 10:10:20 +00:00
Nikolay Hohsadze
5695cc4817
Update uarch detection for Intel processors ( #184 )
2021-10-29 10:41:50 +02:00
Guillaume Chatelet
5ef0db4bba
Update README.md
2021-10-28 16:36:10 +02:00
Corentin Le Molgat
1601db5335
ci: Update Linux jobs to run inside a docker container.
2021-10-28 16:24:54 +02:00
Corentin Le Molgat
ccc3a51e4c
ci: Add docker based test framework
...
* Add documentation
* Add .dockerignore: minimize docker context size to improve speed
* Add Makefile: to easily run various docker stages
* Add a CMake sample project to check CMake install rules
2021-10-28 16:24:54 +02:00
Corentin Le Molgat
ca84b91d34
scripts: Fixup for run_integration.sh
2021-10-28 16:24:54 +02:00
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