mirror of
https://chromium.googlesource.com/libyuv/libyuv
synced 2026-06-15 08:26:06 +08:00
ARGBToYRow_AVX512BW preserve XMM6-XMM15 due to Windows stack alignment
Bug: 505124541 Change-Id: Id5ae539f57b314980182bec76a788e33273b2392 Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/7835639 Reviewed-by: richard winterton <rrwinterton@gmail.com> Reviewed-by: James Zern <jzern@google.com> Commit-Queue: Frank Barchard <fbarchard@google.com>
This commit is contained in:
parent
4b4e68b372
commit
e23282704f
@ -1,6 +1,6 @@
|
|||||||
Name: libyuv
|
Name: libyuv
|
||||||
URL: https://chromium.googlesource.com/libyuv/libyuv/
|
URL: https://chromium.googlesource.com/libyuv/libyuv/
|
||||||
Version: 1937
|
Version: 1938
|
||||||
Revision: DEPS
|
Revision: DEPS
|
||||||
License: BSD-3-Clause
|
License: BSD-3-Clause
|
||||||
License File: LICENSE
|
License File: LICENSE
|
||||||
|
|||||||
@ -11,6 +11,6 @@
|
|||||||
#ifndef INCLUDE_LIBYUV_VERSION_H_
|
#ifndef INCLUDE_LIBYUV_VERSION_H_
|
||||||
#define INCLUDE_LIBYUV_VERSION_H_
|
#define INCLUDE_LIBYUV_VERSION_H_
|
||||||
|
|
||||||
#define LIBYUV_VERSION 1937
|
#define LIBYUV_VERSION 1938
|
||||||
|
|
||||||
#endif // INCLUDE_LIBYUV_VERSION_H_
|
#endif // INCLUDE_LIBYUV_VERSION_H_
|
||||||
|
|||||||
@ -307,7 +307,7 @@ void RGBToARGBRow_AVX512BW(const uint8_t* src_raw, uint8_t* dst_argb, const uint
|
|||||||
"+r"(width) // %2
|
"+r"(width) // %2
|
||||||
: "m"(kPermdRAWToARGB_AVX512BW), // %3
|
: "m"(kPermdRAWToARGB_AVX512BW), // %3
|
||||||
"m"(*shuffler) // %4
|
"m"(*shuffler) // %4
|
||||||
: "memory", "cc", "rax", "k1", "zmm0", "zmm1", "zmm2", "zmm3", "zmm4", "zmm5", "zmm6");
|
: "memory", "cc", "rax", "k1", "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6");
|
||||||
}
|
}
|
||||||
|
|
||||||
void RAWToARGBRow_AVX512BW(const uint8_t* src_raw, uint8_t* dst_argb, int width) {
|
void RAWToARGBRow_AVX512BW(const uint8_t* src_raw, uint8_t* dst_argb, int width) {
|
||||||
@ -1615,8 +1615,8 @@ void ARGBToYMatrixRow_AVX512BW(const uint8_t* src_argb,
|
|||||||
"+r"(width) // %2
|
"+r"(width) // %2
|
||||||
: "r"(c), // %3
|
: "r"(c), // %3
|
||||||
"m"(kPermdARGBToY_AVX512BW) // %4
|
"m"(kPermdARGBToY_AVX512BW) // %4
|
||||||
: "memory", "cc", "zmm0", "zmm1", "zmm2", "zmm3", "zmm4", "zmm5", "zmm6",
|
: "memory", "cc", "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6",
|
||||||
"zmm7", "zmm16");
|
"xmm7", "xmm16");
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -1757,8 +1757,8 @@ void ARGBToUV444MatrixRow_AVX2(const uint8_t* src_argb,
|
|||||||
#endif
|
#endif
|
||||||
: "r"(c), // %4
|
: "r"(c), // %4
|
||||||
"m"(kPermdARGBToY_AVX) // %5
|
"m"(kPermdARGBToY_AVX) // %5
|
||||||
: "memory", "cc", "ymm0", "ymm1", "ymm2", "ymm3", "ymm4", "ymm5", "ymm6",
|
: "memory", "cc", "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6",
|
||||||
"ymm7");
|
"xmm7");
|
||||||
}
|
}
|
||||||
#endif // HAS_ARGBTOUV444ROW_AVX2
|
#endif // HAS_ARGBTOUV444ROW_AVX2
|
||||||
|
|
||||||
@ -1837,8 +1837,8 @@ void ARGBToUV444MatrixRow_AVX512BW(const uint8_t* src_argb,
|
|||||||
#endif
|
#endif
|
||||||
: "r"(c), // %4
|
: "r"(c), // %4
|
||||||
"m"(kPermdARGBToY_AVX512BW) // %5
|
"m"(kPermdARGBToY_AVX512BW) // %5
|
||||||
: "memory", "cc", "zmm0", "zmm1", "zmm2", "zmm3", "zmm4", "zmm5", "zmm6",
|
: "memory", "cc", "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6",
|
||||||
"zmm7", "zmm16");
|
"xmm7", "xmm16");
|
||||||
}
|
}
|
||||||
#endif // HAS_ARGBTOUV444ROW_AVX512BW
|
#endif // HAS_ARGBTOUV444ROW_AVX512BW
|
||||||
|
|
||||||
@ -2298,8 +2298,8 @@ void ARGBToUVMatrixRow_AVX512BW(const uint8_t* src_argb,
|
|||||||
"m"(kShuffleAARRGGBB), // %6
|
"m"(kShuffleAARRGGBB), // %6
|
||||||
"m"(kPermdARGBToY_AVX512BW), // %7
|
"m"(kPermdARGBToY_AVX512BW), // %7
|
||||||
"m"(kPermdARGBToUV_AVX512BW) // %8
|
"m"(kPermdARGBToUV_AVX512BW) // %8
|
||||||
: "memory", "cc", "zmm0", "zmm1", "zmm2", "zmm3", "zmm4", "zmm5", "zmm6",
|
: "memory", "cc", "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6",
|
||||||
"zmm7", "zmm16", "zmm17", "zmm18", "zmm19");
|
"xmm7", "xmm16", "xmm17", "xmm18", "xmm19");
|
||||||
}
|
}
|
||||||
|
|
||||||
void ARGBToUVRow_AVX512BW(const uint8_t* src_argb,
|
void ARGBToUVRow_AVX512BW(const uint8_t* src_argb,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user