mirror of
https://chromium.googlesource.com/libyuv/libyuv
synced 2025-12-06 16:56:55 +08:00
ARGBToUV 64 bit use ymm8 for shuffler
Bug: 381138208 Change-Id: I5e69bc1610bd6269bf9a4113e729cf307dd36f60 Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/6536833 Reviewed-by: richard winterton <rrwinterton@gmail.com>
This commit is contained in:
parent
61bdaee13a
commit
0853c9353f
@ -1,6 +1,6 @@
|
|||||||
Name: libyuv
|
Name: libyuv
|
||||||
URL: https://chromium.googlesource.com/libyuv/libyuv/
|
URL: https://chromium.googlesource.com/libyuv/libyuv/
|
||||||
Version: 1909
|
Version: 1910
|
||||||
License: BSD-3-Clause
|
License: BSD-3-Clause
|
||||||
License File: LICENSE
|
License File: LICENSE
|
||||||
Shipped: yes
|
Shipped: yes
|
||||||
|
|||||||
@ -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 1909
|
#define LIBYUV_VERSION 1910
|
||||||
|
|
||||||
#endif // INCLUDE_LIBYUV_VERSION_H_
|
#endif // INCLUDE_LIBYUV_VERSION_H_
|
||||||
|
|||||||
@ -116,7 +116,8 @@ uint32_t HashDjb2_NEON(const uint8_t* src, int count, uint32_t seed) {
|
|||||||
uint32_t hash = seed;
|
uint32_t hash = seed;
|
||||||
const uint32_t c16 = 0x92d9e201; // 33^16
|
const uint32_t c16 = 0x92d9e201; // 33^16
|
||||||
uint32_t tmp, tmp2;
|
uint32_t tmp, tmp2;
|
||||||
asm("ld1 {v16.4s, v17.4s, v18.4s, v19.4s}, [%[kIdx]] \n"
|
asm(
|
||||||
|
"ld1 {v16.4s, v17.4s, v18.4s, v19.4s}, [%[kIdx]] \n"
|
||||||
"ld1 {v4.4s, v5.4s, v6.4s, v7.4s}, [%[kMuls]] \n"
|
"ld1 {v4.4s, v5.4s, v6.4s, v7.4s}, [%[kMuls]] \n"
|
||||||
|
|
||||||
// count is always a multiple of 16.
|
// count is always a multiple of 16.
|
||||||
|
|||||||
@ -1833,6 +1833,9 @@ void OMITFP ARGBToUVMatrixRow_AVX2(
|
|||||||
:);
|
:);
|
||||||
|
|
||||||
asm volatile(
|
asm volatile(
|
||||||
|
#if !defined(__i386__)
|
||||||
|
"vmovdqa 0(%5),%%ymm8 \n"
|
||||||
|
#endif
|
||||||
"vmovdqa 32(%5),%%ymm5 \n"
|
"vmovdqa 32(%5),%%ymm5 \n"
|
||||||
"sub %1,%2 \n"
|
"sub %1,%2 \n"
|
||||||
|
|
||||||
@ -1866,8 +1869,11 @@ void OMITFP ARGBToUVMatrixRow_AVX2(
|
|||||||
"vpsrlw $0x8,%%ymm0,%%ymm0 \n"
|
"vpsrlw $0x8,%%ymm0,%%ymm0 \n"
|
||||||
"vpackuswb %%ymm0,%%ymm1,%%ymm0 \n"
|
"vpackuswb %%ymm0,%%ymm1,%%ymm0 \n"
|
||||||
"vpermq $0xd8,%%ymm0,%%ymm0 \n"
|
"vpermq $0xd8,%%ymm0,%%ymm0 \n"
|
||||||
|
#if defined(__i386__)
|
||||||
"vpshufb (%5),%%ymm0,%%ymm0 \n"
|
"vpshufb (%5),%%ymm0,%%ymm0 \n"
|
||||||
|
#else
|
||||||
|
"vpshufb %%ymm8,%%ymm0,%%ymm0 \n"
|
||||||
|
#endif
|
||||||
"vextractf128 $0x0,%%ymm0,(%1) \n"
|
"vextractf128 $0x0,%%ymm0,(%1) \n"
|
||||||
"vextractf128 $0x1,%%ymm0,0x0(%1,%2,1) \n"
|
"vextractf128 $0x1,%%ymm0,0x0(%1,%2,1) \n"
|
||||||
"lea 0x10(%1),%1 \n"
|
"lea 0x10(%1),%1 \n"
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user