mirror of
https://chromium.googlesource.com/libyuv/libyuv
synced 2026-01-01 03:12:16 +08:00
Add HAS_SCALEARGBROWDOWNEVEN_RVV marco and disable it by default
HAS_SCALEARGBROWDOWNEVEN_RVV wasn't defined, so we cannot use ScaleARGBRowDownEven_RVV & ScaleARGBRowDownEvenBox_RVV. - Seperate to two conditional statements when selecting DownEven or DownEvenBox. - Also, add HAS_SCALEARGBROWDOWNEVEN_RVV and disable it by default. Bug: libyuv:965 Signed-off-by: Bruce Lai <bruce.lai@sifive.com> Change-Id: Ic7ec40520b64131a456c6f3eea0639b3620f11ae Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4882441 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Frank Barchard <fbarchard@chromium.org>
This commit is contained in:
parent
def473f501
commit
1dcbc30553
@ -180,6 +180,7 @@ extern "C" {
|
||||
|
||||
#if !defined(LIBYUV_DISABLE_RVV) && defined(__riscv_vector)
|
||||
#define HAS_SCALEADDROW_RVV
|
||||
// #define HAS_SCALEARGBROWDOWNEVEN_RVV
|
||||
#define HAS_SCALEUVROWDOWN4_RVV
|
||||
#define HAS_SCALEUVROWDOWNEVEN_RVV
|
||||
#if __riscv_v_intrinsic == 11000
|
||||
|
||||
@ -284,10 +284,14 @@ static void ScaleARGBDownEven(int src_width,
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#if defined(HAS_SCALEARGBROWDOWNEVENBOX_RVV)
|
||||
if (filtering && TestCpuFlag(kCpuHasRVV)) {
|
||||
ScaleARGBRowDownEven = ScaleARGBRowDownEvenBox_RVV;
|
||||
}
|
||||
#endif
|
||||
#if defined(HAS_SCALEARGBROWDOWNEVEN_RVV)
|
||||
if (TestCpuFlag(kCpuHasRVV)) {
|
||||
ScaleARGBRowDownEven =
|
||||
filtering ? ScaleARGBRowDownEvenBox_RVV : ScaleARGBRowDownEven_RVV;
|
||||
if (!filtering && TestCpuFlag(kCpuHasRVV)) {
|
||||
ScaleARGBRowDownEven = ScaleARGBRowDownEven_RVV;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
@ -130,6 +130,7 @@ void ScaleARGBRowDown2Box_RVV(const uint8_t* src_argb,
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef HAS_SCALEARGBROWDOWNEVEN_RVV
|
||||
void ScaleARGBRowDownEven_RVV(const uint8_t* src_argb,
|
||||
ptrdiff_t src_stride,
|
||||
int src_stepx,
|
||||
@ -148,6 +149,7 @@ void ScaleARGBRowDownEven_RVV(const uint8_t* src_argb,
|
||||
dst += vl;
|
||||
} while (w > 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef HAS_SCALEARGBROWDOWNEVENBOX_RVV
|
||||
void ScaleARGBRowDownEvenBox_RVV(const uint8_t* src_argb,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user