diff options
author | Bruce Lai <bruce.lai@sifive.com> | 2023-07-04 22:05:46 -0700 |
---|---|---|
committer | libyuv LUCI CQ <libyuv-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2023-07-27 02:59:47 +0000 |
commit | c60ac4025cd88ec9139cc01d6021fa81a8d2c085 (patch) | |
tree | b3953e1ae0847255c46c46ec5e59d2736a3dc9e1 /include/libyuv | |
parent | 10de943a12737be193e4f51df9e37b555ea09710 (diff) | |
download | libyuv-c60ac4025cd88ec9139cc01d6021fa81a8d2c085.tar.gz |
[RVV] Enable ScaleRowDown38_RVV & ScaleRowDown38_{2,3}_Box_RVV
* Run on SiFive internal FPGA:
Test Case Speedup
I420ScaleDownBy3by8_None 4.2
I420ScaleDownBy3by8_Linear 1.7
I420ScaleDownBy3by8_Bilinear 1.7
I420ScaleDownBy3by8_Box 1.7
I444ScaleDownBy3by8_None 4.2
I444ScaleDownBy3by8_Linear 1.8
I444ScaleDownBy3by8_Bilinear 1.8
I444ScaleDownBy3by8_Box 1.8
Change-Id: Ic2e98de2494d9e7b25f5db115a7f21c618eaefed
Signed-off-by: Bruce Lai <bruce.lai@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4711857
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Diffstat (limited to 'include/libyuv')
-rw-r--r-- | include/libyuv/scale_row.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/include/libyuv/scale_row.h b/include/libyuv/scale_row.h index 98829172..d825a8db 100644 --- a/include/libyuv/scale_row.h +++ b/include/libyuv/scale_row.h @@ -181,6 +181,7 @@ extern "C" { #define HAS_SCALEARGBROWDOWNEVEN_RVV #define HAS_SCALEROWDOWN2_RVV #define HAS_SCALEROWDOWN34_RVV +#define HAS_SCALEROWDOWN38_RVV #define HAS_SCALEROWDOWN4_RVV #define HAS_SCALEROWUP2_LINEAR_RVV #define HAS_SCALEROWUP2_BILINEAR_RVV @@ -1847,6 +1848,19 @@ void ScaleRowDown34_1_Box_RVV(const uint8_t* src_ptr, ptrdiff_t src_stride, uint8_t* dst_ptr, int dst_width); +void ScaleRowDown38_RVV(const uint8_t* src_ptr, + ptrdiff_t src_stride, + uint8_t* dst, + int dst_width); +void ScaleRowDown38_3_Box_RVV(const uint8_t* src_ptr, + ptrdiff_t src_stride, + uint8_t* dst_ptr, + int dst_width); +void ScaleRowDown38_2_Box_RVV(const uint8_t* src_ptr, + ptrdiff_t src_stride, + uint8_t* dst_ptr, + int dst_width); + void ScaleRowUp2_Linear_RVV(const uint8_t* src_ptr, uint8_t* dst_ptr, int dst_width); |