mirror of
https://chromium.googlesource.com/libyuv/libyuv
synced 2025-12-06 16:56:55 +08:00
i422torgb565 is asm for clangcl as well
Merge branch 'master' of https://chromium.googlesource.com/libyuv/libyuv into convertcl allow lto for llvm but not gcc R=harryjin@google.com BUG=libyuv:469 Review URL: https://webrtc-codereview.appspot.com/52769004.
This commit is contained in:
parent
bb66c021ff
commit
ee9aaea02f
@ -1,6 +1,6 @@
|
|||||||
Name: libyuv
|
Name: libyuv
|
||||||
URL: http://code.google.com/p/libyuv/
|
URL: http://code.google.com/p/libyuv/
|
||||||
Version: 1469
|
Version: 1470
|
||||||
License: BSD
|
License: BSD
|
||||||
License File: LICENSE
|
License File: LICENSE
|
||||||
|
|
||||||
|
|||||||
@ -183,8 +183,9 @@ extern "C" {
|
|||||||
#define VISUALC_HAS_AVX2 1
|
#define VISUALC_HAS_AVX2 1
|
||||||
#endif // VisualStudio >= 2012
|
#endif // VisualStudio >= 2012
|
||||||
|
|
||||||
// The following are available require VS2012. Port to GCC.
|
// The following are available for Visual C and clangcl 32 bit:
|
||||||
#if !defined(LIBYUV_DISABLE_X86) && defined(VISUALC_HAS_AVX2)
|
#if !defined(LIBYUV_DISABLE_X86) && defined(_M_IX86) && \
|
||||||
|
(defined(VISUALC_HAS_AVX2) || defined(CLANG_HAS_AVX2))
|
||||||
#define HAS_ARGB1555TOARGBROW_AVX2
|
#define HAS_ARGB1555TOARGBROW_AVX2
|
||||||
#define HAS_ARGB4444TOARGBROW_AVX2
|
#define HAS_ARGB4444TOARGBROW_AVX2
|
||||||
#define HAS_ARGBTOARGB1555ROW_AVX2
|
#define HAS_ARGBTOARGB1555ROW_AVX2
|
||||||
|
|||||||
@ -11,6 +11,6 @@
|
|||||||
#ifndef INCLUDE_LIBYUV_VERSION_H_ // NOLINT
|
#ifndef INCLUDE_LIBYUV_VERSION_H_ // NOLINT
|
||||||
#define INCLUDE_LIBYUV_VERSION_H_
|
#define INCLUDE_LIBYUV_VERSION_H_
|
||||||
|
|
||||||
#define LIBYUV_VERSION 1469
|
#define LIBYUV_VERSION 1470
|
||||||
|
|
||||||
#endif // INCLUDE_LIBYUV_VERSION_H_ NOLINT
|
#endif // INCLUDE_LIBYUV_VERSION_H_ NOLINT
|
||||||
|
|||||||
@ -2159,8 +2159,7 @@ void I422ToUYVYRow_C(const uint8* src_y,
|
|||||||
// Maximum temporary width for wrappers to process at a time, in pixels.
|
// Maximum temporary width for wrappers to process at a time, in pixels.
|
||||||
#define MAXTWIDTH 2048
|
#define MAXTWIDTH 2048
|
||||||
|
|
||||||
#if !(defined(_MSC_VER) && !defined(__clang__)) && \
|
#if !defined(_MSC_VER) && defined(HAS_I422TORGB565ROW_SSSE3)
|
||||||
defined(HAS_I422TORGB565ROW_SSSE3)
|
|
||||||
// row_win.cc has asm version, but GCC uses 2 step wrapper.
|
// row_win.cc has asm version, but GCC uses 2 step wrapper.
|
||||||
void I422ToRGB565Row_SSSE3(const uint8* src_y,
|
void I422ToRGB565Row_SSSE3(const uint8* src_y,
|
||||||
const uint8* src_u,
|
const uint8* src_u,
|
||||||
|
|||||||
@ -17,7 +17,8 @@ extern "C" {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// This module is for GCC x86 and x64.
|
// This module is for GCC x86 and x64.
|
||||||
#if !defined(LIBYUV_DISABLE_X86) && (defined(__x86_64__) || defined(__i386__))
|
#if !defined(LIBYUV_DISABLE_X86) && \
|
||||||
|
(defined(__x86_64__) || (defined(__i386__) && !defined(_MSC_VER)))
|
||||||
|
|
||||||
#if defined(HAS_ARGBTOYROW_SSSE3) || defined(HAS_ARGBGRAYROW_SSSE3)
|
#if defined(HAS_ARGBTOYROW_SSSE3) || defined(HAS_ARGBGRAYROW_SSSE3)
|
||||||
|
|
||||||
|
|||||||
@ -21,9 +21,9 @@ namespace libyuv {
|
|||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// This module is for Visual C.
|
// This module is for Visual C 32/64 bit and clangcl 32 bit
|
||||||
#if !defined(LIBYUV_DISABLE_X86) && (defined(_M_IX86) || defined(_M_X64)) && \
|
#if !defined(LIBYUV_DISABLE_X86) && \
|
||||||
defined(_MSC_VER) && !defined(__clang__)
|
(defined(_M_IX86) || (defined(_M_X64) && !defined(__clang__)))
|
||||||
|
|
||||||
struct YuvConstants {
|
struct YuvConstants {
|
||||||
lvec8 kUVToB; // 0
|
lvec8 kUVToB; // 0
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user