* Add CMake option and compiler flag for using ARM PMU in speed
* Enabling use of ARM PMU for benchmarking when compiler flag is enabled (#1141)
* Enabling use of ARM PMU for benchmarking when compiler flag is enabled
* Adding documentation in code on how to enable PMU
Co-authored-by: Ted Eaton <ted@eeaton.ca>
* Add powerpc64le name as alternative to ppc64le
FreeBSD uses powerpc64le name for 64-bit POWER little endian.
* Remove parentheses
Co-authored-by: pkubaj <pkubaj@FreeBSD.org>
* x86: Optimistic port to x86
No processor extensions support.
Tests are passed.
Signed-off-by: Vitaly Chikunov <vt@altlinux.org>
* ppc64le: Optimistic port to ppc64le
No (AltiVec/VSX) processor extensions support is detected.
Tests are passed.
Note that `secure_cmp32` may require additional treatment for this
architecture.
Signed-off-by: Vitaly Chikunov <vt@altlinux.org>
* CMake: ARM toolchain files
* CI: Cross compile for ARM instead of emulating the entire build
* CMake: do not use mcpu=native when cross compiling
* CI: Disable testapproval [skip ci]
* CI: Disable armel tests
* CI: Disable test_mem on ARM
* Replace OQS_PORTABLE_BUILD with OQS_DIST_BUILD
Also introduces OQS_OPT_TARGET and removes OQS_USE_CPU_EXTENSIONS
* Only compile sha3 avx2 code on Linux|Darwin
* Use new ARCH_ARM[X] flags in SIKE CMakeLists
* Update test_portability and rename to test_distbuild
* Update documentation for building Windows AMD64 from Ubuntu Bionic
* Update scripts/build-android.sh
* More specific CMAKE_SYSTEM_PROCESSOR for rasppi toolchain
* CI: Use OQS_DIST_BUILD in some jobs
* Replace OQS_get_available_CPU_extensions by OQS_CPU_has_extension
* ARM64v8/ARM32v7 runtime cpu feature detection
* Compile-time detection of some ARM features
* Toolchain files to cross compile for ARM32v7 and ARM64v8
* Remove unnecessary references to CMAKE_BUILD_TYPE=Release
* Use OQS_DIST_BUILD=ON on Windows
* sha3: remove old implementations
* sha3: new implementations
* picnic: use liboqs sha3 and sha3x4
* frodo: use new sha3x4 interface
* sphincs: use liboqs sha3x4
* fixup
* skip test_spdx on xkcp_low directory
* xkcp_sha3: explicit casts to avoid narrowing warnings
* xkcp_sha3x4: explicit casts to avoid narrowing warnings
* sha3: disable platform specific xkcp if OQS_PORTABLE_BUILD
* sha3: fix Wcast-qual warnings on clang-9
* fix 'reset' functions
* xkcp_sha3: skip fastloop call if input is not long enough
* xkcp_low: Enable lane complementing for plain-64bits
* xkcp_low: remove Kravatte definitions from times4/avx2
* Add common OQS_MEM_aligned_alloc and OQS_MEM_aligned_free
* Require both OQS_USE_OPENSSL and OQS_USE_SHA3_OPENSSL to enable OpenSSL's SHA3
* Fix some undefined behaviour in KeccakP-1600/plain-64bits
* Fix some undefined behaviour in KeccakP-1600times4/avx2
* Expand shake tests
* Add sha3x4.h include to oqs.h
* Add xkcp_low license info to readme [skip-ci]
* Add copy_from_xkcp scripts [skip-ci]
* SPDX License Info for new scripts [skip-ci]
* Fix OQS_PORTABLE_BUILD logic for Frodo
* Refine 'OQS_PORTABLE_BUILD' by general architecture, e.g. x86_64
* Use CMake to define ARCH_X86_64 and ARCH_ARM_ANY used in common.{c,h}
* Avoid triggering portable build on ARM
* Set OQS_USE_CPU_EXTENSIONS even on MSVC
* Compile AES-NI code in portable x86_64 builds