文件名称:android_external_cpu_features
文件大小:98KB
文件格式:ZIP
更新时间:2024-04-21 20:16:05
cpu_features 跨平台的C库,用于在运行时检索CPU功能(例如可用指令)。 目录 设计原理 易于使用。 有关示例,请参见下面的代码片段。 可扩展易于添加缺少的功能或体系结构。 与旧的编译器兼容,并且在许多体系结构上可用,因此可以广泛使用。 为了确保cpu_features可以在尽可能多的平台上运行,我们在高度可移植的C:C99版本中实现了它。 沙盒兼容。 该库使用多种策略来应对沙盒环境或cpuid不可用时的情况。 在密封环境中运行集成测试时,这很有用。 线程安全,不分配内存,也不引发异常。 cpu_features适用于实现基本的libc函数,例如malloc , memcpy和memcmp 。 单元测试。 代码样本 注意:对于C ++代码,库函数在CpuFeatures命名空间中定义。 在运行时检查功能 这是一个简单的示例,如果CPU支持AES和SSE4.2指令集,
【文件预览】:
android_external_cpu_features-xr
----.github()
--------workflows()
----OWNERS(38B)
----src()
--------utils()
--------cpuinfo_arm.c(9KB)
--------stack_line_reader.c(4KB)
--------cpuinfo_aarch64.c(8KB)
--------cpuinfo_x86.c(67KB)
--------cpuinfo_ppc.c(7KB)
--------cpuinfo_mips.c(3KB)
--------hwcaps.c(6KB)
--------define_tables.h(3KB)
--------string_view.c(6KB)
--------filesystem.c(2KB)
----ndk_compat()
--------cpu-features.c(7KB)
--------cpu-features.h(11KB)
--------CMakeLists.txt(2KB)
--------ndk-compat-test.c(365B)
--------README.md(340B)
----scripts()
--------run_integration.sh(7KB)
--------test_integration.sh(2KB)
----.clang-format(51B)
----CMakeLists.txt(9KB)
----PREUPLOAD.cfg(29B)
----CONTRIBUTING.md(969B)
----.travis.yml(3KB)
----LICENSE(13KB)
----MODULE_LICENSE_APACHE2(0B)
----test()
--------filesystem_for_testing.h(2KB)
--------stack_line_reader_test.cc(4KB)
--------cpuinfo_mips_test.cc(4KB)
--------cpuinfo_aarch64_test.cc(6KB)
--------bit_utils_test.cc(2KB)
--------cpuinfo_arm_test.cc(11KB)
--------string_view_test.cc(8KB)
--------CMakeLists.txt(4KB)
--------hwcaps_for_testing.h(959B)
--------hwcaps_for_testing.cc(2KB)
--------cpuinfo_ppc_test.cc(4KB)
--------filesystem_for_testing.cc(3KB)
--------cpuinfo_x86_test.cc(22KB)
----cmake()
--------googletest.CMakeLists.txt.in(427B)
--------CpuFeaturesNdkCompatConfig.cmake.in(120B)
--------README.md(1KB)
--------CpuFeaturesConfig.cmake.in(102B)
----WORKSPACE(194B)
----README.md(7KB)
----Android.bp(7KB)
----appveyor.yml(600B)
----.gitignore(27B)
----TEST_MAPPING(576B)
----METADATA(388B)
----include()
--------cpuinfo_x86.h(5KB)
--------cpu_features_cache_info.h(2KB)
--------cpu_features_macros.h(6KB)
--------internal()
--------cpuinfo_arm.h(4KB)
--------cpuinfo_ppc.h(4KB)
--------cpuinfo_aarch64.h(5KB)
--------cpuinfo_mips.h(2KB)