diff --git a/README.chromium b/README.chromium index 44d45d2cc..3cfa6d9fa 100644 --- a/README.chromium +++ b/README.chromium @@ -1,6 +1,6 @@ Name: libyuv URL: http://code.google.com/p/libyuv/ -Version: 1716 +Version: 1717 License: BSD License File: LICENSE diff --git a/docs/environment_variables.md b/docs/environment_variables.md index c28d83e7d..cd8159ad5 100644 --- a/docs/environment_variables.md +++ b/docs/environment_variables.md @@ -6,7 +6,10 @@ For test purposes, environment variables can be set to control libyuv behavior. By default the cpu is detected and the most advanced form of SIMD is used. But you can disable instruction sets selectively, or completely, falling back on C code. Set the variable to 1 to disable the specified instruction set. +## All CPUs LIBYUV_DISABLE_ASM + +## Intel CPUs LIBYUV_DISABLE_X86 LIBYUV_DISABLE_SSE2 LIBYUV_DISABLE_SSSE3 @@ -14,12 +17,25 @@ By default the cpu is detected and the most advanced form of SIMD is used. But LIBYUV_DISABLE_SSE42 LIBYUV_DISABLE_AVX LIBYUV_DISABLE_AVX2 - LIBYUV_DISABLE_AVX512BW LIBYUV_DISABLE_ERMS LIBYUV_DISABLE_FMA3 - LIBYUV_DISABLE_MSA + LIBYUV_DISABLE_F16C + LIBYUV_DISABLE_AVX512BW + LIBYUV_DISABLE_AVX512VL + LIBYUV_DISABLE_AVX512VBMI + LIBYUV_DISABLE_AVX512VBMI2 + LIBYUV_DISABLE_AVX512VBITALG + LIBYUV_DISABLE_AVX512VPOPCNTDQ + LIBYUV_DISABLE_GFNI + +## ARM CPUs + LIBYUV_DISABLE_NEON +## MIPS CPUs + LIBYUV_DISABLE_MSA + LIBYUV_DISABLE_MMI + # Test Width/Height/Repeat The unittests default to a small image (128x72) to run fast. This can be set by environment variable to test a specific resolutions. diff --git a/docs/getting_started.md b/docs/getting_started.md index afa8a8995..4426b606e 100644 --- a/docs/getting_started.md +++ b/docs/getting_started.md @@ -27,7 +27,7 @@ Then you'll get a .gclient file like: }, ]; -For iOS add `;target_os=['ios'];` to your OSX .gclient and run `GYP_DEFINES="OS=ios" gclient sync.` +For iOS add `;target_os=['ios'];` to your OSX .gclient and run `gclient sync.` Browse the Git reprository: https://chromium.googlesource.com/libyuv/libyuv/+/master @@ -48,11 +48,8 @@ For Android add `;target_os=['android'];` to your Linux .gclient Then run: - export GYP_DEFINES="OS=android" gclient sync -The sync will generate native build files for your environment using gyp (Windows: Visual Studio, OSX: XCode, Linux: make). This generation can also be forced manually: `gclient runhooks` - To get just the source (not buildable): git clone https://chromium.googlesource.com/libyuv/libyuv @@ -135,8 +132,8 @@ ia32 mips - gn gen out/Release "--args=is_debug=false target_os=\"android\" target_cpu=\"mips64el\" mips_arch_variant=\"r6\" mips_use_msa=true is_component_build=true is_clang=true" - gn gen out/Debug "--args=is_debug=true target_os=\"android\" target_cpu=\"mips64el\" mips_arch_variant=\"r6\" mips_use_msa=true is_component_build=true is_clang=true" + gn gen out/Release "--args=is_debug=false target_os=\"android\" target_cpu=\"mips64el\" mips_arch_variant=\"r6\" mips_use_msa=true is_component_build=true" + gn gen out/Debug "--args=is_debug=true target_os=\"android\" target_cpu=\"mips64el\" mips_arch_variant=\"r6\" mips_use_msa=true is_component_build=true" ninja -v -C out/Debug libyuv_unittest ninja -v -C out/Release libyuv_unittest @@ -182,8 +179,8 @@ Running test with C code: mips - gn gen out/Release "--args=is_debug=false target_os=\"linux\" target_cpu=\"mips64el\" mips_arch_variant=\"loongson3\" mips_use_mmi=true is_component_build=false is_clang=false use_sysroot=false use_gold=false" - gn gen out/Debug "--args=is_debug=true target_os=\"linux\" target_cpu=\"mips64el\" mips_arch_variant=\"loongson3\" mips_use_mmi=true is_component_build=false is_clang=false use_sysroot=false use_gold=false" + gn gen out/Release "--args=is_debug=false target_os=\"linux\" target_cpu=\"mips64el\" mips_arch_variant=\"loongson3\" mips_use_mmi=true is_component_build=false use_sysroot=false use_gold=false" + gn gen out/Debug "--args=is_debug=true target_os=\"linux\" target_cpu=\"mips64el\" mips_arch_variant=\"loongson3\" mips_use_mmi=true is_component_build=false use_sysroot=false use_gold=false" ninja -v -C out/Debug libyuv_unittest ninja -v -C out/Release libyuv_unittest diff --git a/include/libyuv/version.h b/include/libyuv/version.h index 517be841b..6f2f79b5c 100644 --- a/include/libyuv/version.h +++ b/include/libyuv/version.h @@ -11,6 +11,6 @@ #ifndef INCLUDE_LIBYUV_VERSION_H_ #define INCLUDE_LIBYUV_VERSION_H_ -#define LIBYUV_VERSION 1716 +#define LIBYUV_VERSION 1717 #endif // INCLUDE_LIBYUV_VERSION_H_ diff --git a/unit_test/unit_test.cc b/unit_test/unit_test.cc index 7d662706a..a1ae7ea3c 100644 --- a/unit_test/unit_test.cc +++ b/unit_test/unit_test.cc @@ -66,6 +66,9 @@ int TestCpuEnv(int cpu_info) { if (TestEnv("LIBYUV_DISABLE_MSA")) { cpu_info &= ~libyuv::kCpuHasMSA; } + if (TestEnv("LIBYUV_DISABLE_MMI")) { + cpu_info &= ~libyuv::kCpuHasMMI; + } #endif #if !defined(__pnacl__) && !defined(__CLR_VER) && \ (defined(__x86_64__) || defined(_M_X64) || defined(__i386__) || \