2503 Commits

Author SHA1 Message Date
Bruce Lai
b76fcd4654 [RISC-V] Support CMake build with custom compiler flags
This CL aims to support custom compiler flags.
Because upstream clang has supported to build for x280 with -mcpu=sifive-x280.

Change-Id: Ic8fbf026fe6805ac5c3422a9ccc3f53293c89570
Signed-off-by: Bruce Lai <bruce.lai@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4713191
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-07-25 09:21:59 +00:00
Prashanth Swaminathan
423e2b97ea Roll chromium_revision 7287570212..af3d01376b (1165250:1174635)
Change log: 7287570212..af3d01376b
Full diff: 7287570212..af3d01376b

Changed dependencies
* fuchsia_vesion: version:13.20230629.2.1..version:13.20230714.0.1
* gn_vesion: git_revision:4bd1a77e67958fb7f6739bd4542641646f264e5d..git_revision:fae280eabe5d31accc53100137459ece19a7a295
* reclient_vesion: re_client_version:0.109.0.927890d-gomaip..re_client_version:0.110.0.43ec6b1-gomaip
* src/base: 26fca42563..d407b7061b
* src/build: e0690c7c78..860dae780c
* src/buildtools: 6d00f8d8c5..ca163845c7
* src/buildtools/linux64: git_revision:4bd1a77e67958fb7f6739bd4542641646f264e5d..git_revision:fae280eabe5d31accc53100137459ece19a7a295
* src/buildtools/mac: git_revision:4bd1a77e67958fb7f6739bd4542641646f264e5d..git_revision:fae280eabe5d31accc53100137459ece19a7a295
* src/buildtools/reclient: re_client_version:0.109.0.927890d-gomaip..re_client_version:0.110.0.43ec6b1-gomaip
* src/buildtools/third_party/libc++abi/trunk: 8d21803b90..d4760c0af9
* src/buildtools/third_party/libunwind/trunk: f1c687e0aa..6c0013015b
* src/buildtools/win: git_revision:4bd1a77e67958fb7f6739bd4542641646f264e5d..git_revision:fae280eabe5d31accc53100137459ece19a7a295
* src/ios: b16951257b..ddd58e86cf
* src/testing: a74fd69d4e..184b068a94
* src/third_party: 2aff4da2e9..2dc4b18abd
* src/third_party/android_deps/libs/com_squareup_okio_okio_jvm: version:2@3.0.0.cr1..version:2@3.3.0.cr1
* src/third_party/android_deps/libs/com_squareup_wire_wire_runtime_jvm: version:2@4.5.1.cr1..version:2@4.7.0.cr1
* src/third_party/android_deps/libs/net_bytebuddy_byte_buddy: version:2@1.14.4.cr1..version:2@1.14.5.cr1
* src/third_party/android_deps/libs/net_bytebuddy_byte_buddy_agent: version:2@1.14.4.cr1..version:2@1.14.5.cr1
* src/third_party/android_deps/libs/org_mockito_mockito_android: version:2@5.3.1.cr1..version:2@5.4.0.cr1
* src/third_party/android_deps/libs/org_mockito_mockito_core: version:2@5.3.1.cr1..version:2@5.4.0.cr1
* src/third_party/android_deps/libs/org_mockito_mockito_subclass: version:2@5.3.1.cr1..version:2@5.4.0.cr1
* src/third_party/android_sdk/public: -VRKr36Uw8L_iFqqo9nevIBgNMggND5iWxjidyjnCgsC..YK9Rzw3fDzMHVzatNN6VlyoD_81amLZpN1AbmkdOd6AC
* src/third_party/android_sdk/public: RSI3iwryh7URLGRgJHsCvUxj092woTPnKt4pwFcJ6L8C..HWVsGs2HCKgSVv41FsOcsfJbNcB0UFiNrF6Tc4yRArYC
* src/third_party/android_sdk/public: eo5KvW6UVor92LwZai8Zulc624BQZoCu-yn7wa1z_YcC..u-bhWbTME6u-DjypTgr3ZikCyeAeU6txkR9ET6Uudc8C
* src/third_party/androidx: ipivfTxGcbiTG_EUQ5jX8s0lPg3Q5LthXj9A__Z-Zl4C..y7rF_rx56mD3FGhMiqnlbQ6HOqHJ95xUFNX1m-_a988C
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/824f0e9113..20a06474c0
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/48b31edbfc..fa05d995e1
* src/third_party/depot_tools: 98cadbd0ed..d3e43dd431
* src/third_party/freetype/src: e4586d960f..9e3c5d7e18
* src/third_party/jdk: 2Of9Pe_OdO4xoAATuiLDiMVNebKTNO3WrwJGqil4RosC..IivIDwNBf73mf7UwCOBceRUuDdtizMCgSOQDfUGHArsC
* src/third_party/kotlin_stdlib: bhkmCcKzQ5IXUsDnWkRfouPfdzzyrgw40PUzRvArrGEC..Z1gsqhL967kFQecxKrRwXHbl-vwQjpv0l7PMUZ0EVO8C
* src/third_party/kotlinc/current: QSwE30iq_KLKxImEnQEwDMQM_cU10eZSAwNobs8BEsoC..Rr02Gf2EkaeSs3EhSUHhPqDHSd1AzimrM6cRYUJCPjQC
* src/third_party/libjpeg_turbo: aa4075f116..30bdb85e30
* src/third_party/r8: vw5kLlW3-suSlCKSO9OQpFWpR8oDnvQ8k1RgKNUapQYC..O1BBWiBTIeNUcraX8STMtQXVaCleu6SJJjWCcnfhPLkC
* src/third_party/requests/src: https://chromium.googlesource.com/external/github.com/kennethreitz/requests.git/+log/refs/tags/..c7e0fc087c
* src/third_party/turbine: G8Cku1fztaDd9to_8gk3PNWM2iRacAxD9zcUAgUPUEAC..2I2Nz480QsuCxpQ1lMfbigX8l5HAhX3_ykWU4TKRGo4C
* src/tools: 3443b1e38a..a76c0dbb64
DEPS diff: 7287570212..af3d01376b/DEPS

Clang version changed llvmorg-17-init-12166-g7586aeab:llvmorg-17-init-16420-g0c545a44
Details: 7287570212..af3d01376b/tools/clang/scripts/update.py

BUG=None

Change-Id: I23adf388ca0f22eb532e54f1359f95f2a7d30ff0
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4713190
Commit-Queue: Mirko Bonadei <mbonadei@chromium.org>
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
2023-07-25 06:53:54 +00:00
Darren Hsieh
aed6dbef17 [RVV] Enable NV{12,21}To{ARGB,RGB24}Row_RVV
* Run on SiFive internal FPGA(w/ -march=rv64gcv):

Test Case	Speedup
NV12ToARGB_Opt	12.0
NV21ToARGB_Opt	12.1
NV12ToABGR_Opt	12.6
NV21ToABGR_Opt	12.0
NV12ToRGB24_Opt	12.5
NV21ToRGB24_Opt	11.7
NV12ToRAW_Opt	12.1
NV21ToRAW_Opt	11.4

Change-Id: Icae2bac2b4ebbd4c5a89e847fde9a74fe6481878
Signed-off-by: Darren Hsieh <darren.hsieh@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4707804
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-07-24 17:07:01 +00:00
Anne Redulla
9b6895ccd9 [ssci] Added Shipped field to READMEs
This CL adds the Shipped field (and may update the
License File field) in Chromium READMEs. Changes were
automatically created, so if you disagree with any of
them (e.g. a package is used only for testing purposes
and is not shipped), comment the suggested change and
why.

See the LSC doc at go/lsc-chrome-metadata.

Bug: b:285450740
Change-Id: I69bd0f58ab3b3861498f355e5a5650dcddfa3a6f
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4666442
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
Commit-Queue: Anne Redulla <aredulla@google.com>
2023-07-07 06:09:53 +00:00
Mirko Bonadei
13a80e72cc Roll chromium_revision 9063d86518..7287570212 (1155374:1165250)
Change log: 9063d86518..7287570212
Full diff: 9063d86518..7287570212

Changed dependencies
* fuchsia_vesion: version:12.20230607.1.1..version:13.20230629.2.1
* gn_vesion: git_revision:1cd35c1b722472e714c30d12031af81443bb20ae..git_revision:4bd1a77e67958fb7f6739bd4542641646f264e5d
* reclient_vesion: re_client_version:0.107.1.0b39c4c-gomaip..re_client_version:0.109.0.927890d-gomaip
* src/base: 80d6bd7cc6..26fca42563
* src/build: 7e5b8b78a9..e0690c7c78
* src/buildtools: 3819ac6f3d..6d00f8d8c5
* src/buildtools/linux64: git_revision:1cd35c1b722472e714c30d12031af81443bb20ae..git_revision:4bd1a77e67958fb7f6739bd4542641646f264e5d
* src/buildtools/mac: git_revision:1cd35c1b722472e714c30d12031af81443bb20ae..git_revision:4bd1a77e67958fb7f6739bd4542641646f264e5d
* src/buildtools/reclient: re_client_version:0.107.1.0b39c4c-gomaip..re_client_version:0.109.0.927890d-gomaip
* src/buildtools/third_party/libc++/trunk: 055b2e17ae..84fb809dd6
* src/buildtools/third_party/libc++abi/trunk: 899caea381..8d21803b90
* src/buildtools/third_party/libunwind/trunk: b5a43ecdac..f1c687e0aa
* src/buildtools/win: git_revision:1cd35c1b722472e714c30d12031af81443bb20ae..git_revision:4bd1a77e67958fb7f6739bd4542641646f264e5d
* src/ios: 0b26248597..b16951257b
* src/testing: a1a760920e..a74fd69d4e
* src/third_party: 84f7bf74a3..2aff4da2e9
* src/third_party/android_toolchain: version:2@r23c.cr0..R_8suM8m0oHbZ1awdxGXvKEFpAOETscbfZxkkMthyk8C
* src/third_party/androidx: 8QRU_3WDdK0VVAHe7demCsR7qoa8ba2DVzXsXGxWQKkC..ipivfTxGcbiTG_EUQ5jX8s0lPg3Q5LthXj9A__Z-Zl4C
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/6cf9820837..824f0e9113
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/3173309024..48b31edbfc
* src/third_party/depot_tools: 3cf9180560..98cadbd0ed
* src/third_party/freetype/src: 4e1c0e8fba..e4586d960f
* src/third_party/harfbuzz-ng/src: 8df5cdbcda..db700b5670
* src/third_party/icu: 1766524877..e8c3bc9ea9
* src/third_party/jdk: -1zDGMOzS_Qsja50TakJCSqN9C9TYppQrsny4HATSQwC..2Of9Pe_OdO4xoAATuiLDiMVNebKTNO3WrwJGqil4RosC
* src/third_party/kotlin_stdlib: z4_AYYz2Tw5GKikuiDLTuxxf0NJVGLkC3CVcyiIpc-gC..bhkmCcKzQ5IXUsDnWkRfouPfdzzyrgw40PUzRvArrGEC
* src/third_party/r8: 4nvRHMrsaaAwaTGCTVhj-rVB4rr7rtMUb01KL83_TA8C..vw5kLlW3-suSlCKSO9OQpFWpR8oDnvQ8k1RgKNUapQYC
* src/third_party/r8/d8: PwglNZFRNPkBBXdnY9NfrZFk2ULWDTRxhV9rl2kvkpUC..vw5kLlW3-suSlCKSO9OQpFWpR8oDnvQ8k1RgKNUapQYC
* src/tools: 31bd9a2aa6..3443b1e38a
DEPS diff: 9063d86518..7287570212/DEPS

No update to Clang.

BUG=None

Change-Id: I43f496a5c5a08c6ae3bdb3665c97d78b8b915891
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4660607
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Commit-Queue: Mirko Bonadei <mbonadei@chromium.org>
2023-07-03 10:53:47 +00:00
Mirko Bonadei
6a566e868d Do not roll the Fuchsia SDK.
No-Try: True
Bug: None
Change-Id: I1231c79328b7d892b0599ea5a0da5517b2c5d28e
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4660448
Commit-Queue: Mirko Bonadei <mbonadei@chromium.org>
Reviewed-by: Jeremy Leconte <jleconte@google.com>
2023-07-03 09:18:00 +00:00
Frank Barchard
650be7496f Fix warnings for missing prototypes
- Add static to internal scale and rotate functions
- Remove unittest that tested an internal scale function
- Remove unused private functions
- Include missing scale_argb.h header
- Bump version and apply clang format

Bug: libyuv:830
Change-Id: I45bab0423b86334f9707f935aedd0c6efc442dd4
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4658956
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
2023-06-30 17:46:56 +00:00
Frank Barchard
a34a0ba687 ARGBExtractAlpha rename variables to match format
Bug: libyuv:956
Change-Id: I31070791754fc69b72c6dcc61be2e038d2676ed9
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4646636
Reviewed-by: Wan-Teh Chang <wtc@google.com>
2023-06-27 03:50:35 +00:00
Cheng Yangyang
c0031cfd95 Add GN builds on loongarch platform.
Currently, chromium has merged loongarch config file in bug:1454442,
and so we resubmit gn builds support for loongarch.

Bug: chromium:1289502
Change-Id: Iac83f5ea016945f7d9cc5f6de20d4c561bab6347
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4615589
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-06-19 17:47:05 +00:00
Cheng Yangyang
eaaf27ba91 Fix gn build error in loongarch platform.
Src/build project has merged loongarch config file, but DEPS not update yet.
It will leads CQ failed when tests loongarch gn builds support patch.

Bug: chromium:1289502
Change-Id: I2c5ae204e2fa3a9776b82a624b3cce08bf25216b
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4614917
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2023-06-19 17:35:03 +00:00
Bruce Lai
873d0db989 [RVV] Fix TestARGBInterpolate test fail
Root cause:
Because InterpolateRow_RVV doesn't setup rounding mode to round-to-nearest-up when y1_fraction == 128.
The rounding mode register is set to round-down in ARGBAttenuateRow_RVV.
It cause InterpolateRow_RVV(y1_fraction == 128) runs on round-down mode.
Running on round-down mode make output result differs from round-to-nearest-up mode.

Solved by: ensure to use correct rounding mode in InterpolateRow_RVV.

Also, removing unnecessary rounding mode setup in ARGBAttenuateRow_RVV.

Bug: libyuv:956
Change-Id: Ib5265d42bad76b036e42b8f91ee42a9afe1f768d
Signed-off-by: Bruce Lai <bruce.lai@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4624492
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-06-19 16:49:52 +00:00
Bruce Lai
4472b5b849 [RVV] Update ARGBAttenuateRow_RVV implementation
Bug: libyuv:956
Change-Id: Ib539c2196767e88fa6e419ed2f22d95b6deaf406
Signed-off-by: Bruce Lai <bruce.lai@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4623172
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-06-17 15:50:34 +00:00
Bruce Lai
7939e039e7 [RVV] Fix compile warning in row_rvv
1. Fix compile warning in row_rvv.cc

2. Avoid compile row_rvv.cc/scale_rvv.cc when using GCC
There is no RVV segment load & store on GCC.
Hence, avoid compiling rvv code on GCC temporarily.

3. Add several compile options to cmake build flow
  -Wno-sign-compare
  -Wno-unused-function
  -Wunused-variable
  -Wuninitialized

Bug: libyuv:956
Change-Id: I9577f98190fc9b28fb6fde65d82d0c67ce54f9ee
Signed-off-by: Bruce Lai <bruce.lai@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4615441
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2023-06-17 15:41:45 +00:00
Frank Barchard
a366ad714a ARGBAttenuate use (a + b + 255) >> 8
- Makes ARM and Intel match and fixes some off by 1 cases
- Add ARGBToUV444MatrixRow_NEON
- Add ConvertFP16ToFP32Column_NEON
- scale_rvv fix intinsic build error
- disable row_win version of ARGBAttenuate/Unattenuate

Bug: libyuv:936, libyuv:956
Change-Id: Ied99aaad3a11a8eb69212b628c58f86ec0723c38
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4617013
Reviewed-by: Wan-Teh Chang <wtc@google.com>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-06-16 21:37:53 +00:00
Bruce Lai
04821d1e7d [RVV] Enable ARGBExtractAlphaRow/ARGBCopyYToAlphaRow
* Run on SiFive internal FPGA:

TestARGBExtractAlpha(~3.2x vs scalar)
TestARGBCopyYToAlpha(~1.6x vs scalar)

Change-Id: I36525c67e8ac3f71ea9d1a58c7dc15a4009d9da1
Signed-off-by: Bruce Lai <bruce.lai@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4617955
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2023-06-15 23:45:24 +00:00
Darren Hsieh
552571e8b2 [RVV] Enable ScaleRowDown34_RVV & ScaleRowDown34_{0,1}_Box_RVV
Run on SiFive internal FPGA:

Test case                       RVV function			Speedup
I444ScaleDownBy3by4_None	ScaleRowDown34_RVV	        5.8
I444ScaleDownBy3by4_Linear	ScaleRowDown34_0/1_Box_RVV	6.5
I444ScaleDownBy3by4_Bilinear	ScaleRowDown34_0/1_Box_RVV	6.3

Bug: libyuv:956
Change-Id: I8ef221ab14d631e14f1ba1aaa25d2b30d4e710db
Signed-off-by: Darren Hsieh <darren.hsieh@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4607777
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-06-14 00:57:00 +00:00
Frank Barchard
2a5d7e2fbc FilterRows_NEON - remove unused function - same as InterpolateRow_NEON
- Bump version to 1872
- Add scale_rvv to build files

Bug: libyuv:956
Change-Id: Ib9e9fd840a0774bd35bcdcca55a2596f33272383
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4608519
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-06-13 15:20:02 +00:00
Darren Hsieh
873eaa3bbf [RVV] Enable Scale{ARGB,UV}RowDown{2,4,EVEN}_RVV
Run on SiFive internal FPGA:

Test case               RVV function				Speedup
I444ScaleDownBy3_Box	ScaleAddRow_RVV+ScaleAddCols(scalar)	2.8
ARGBScaleDownBy2_None	ScaleARGBRowDown2_RVV		        2.2
ARGBScaleDownBy2_Linear	ScaleARGBRowDown2Linear_RVV		5.0
ARGBScaleDownBy2_Box	ScaleARGBRowDown2Box_RVV		4.3
ARGBScaleDownBy4_None	ScaleARGBRowDownEven_RVV		1.2
ARGBScaleDownBy8_Box	ScaleARGBRowDownEvenBox_RVV		3.2
ARGBScaleDownBy4_Box	ScaleARGBRowDown2Box_RVV		4.5
I444ScaleDownBy2_None	ScaleRowDown2_RVV			5.8
I444ScaleDownBy2_Linear	ScaleRowDown2Linear_RVV			6.1
I444ScaleDownBy2_Box	ScaleRowDown2Box_RVV			5.0
I444ScaleDownBy4_None	ScaleRowDown4_RVV			3.6
I444ScaleDownBy4_Box	ScaleRowDown4Box_RVV			3.5
UVScaleDownBy2_None	ScaleUVRowDown2_RVV			5.8
UVScaleDownBy2_Linear	ScaleUVRowDown2Linear_RVV		5.6
UVScaleDownBy2_Box	ScaleUVRowDown2Box_RVV			4.1
UVScaleDownBy4_None	ScaleUVRowDown4_RVV			1.7
UVScaleDownBy4_Box	ScaleUVRowDown2Box_RVV			4.5
						avg-speedup:    4

Note: Specialize ScaleUVRowDown with step_size=4 by ScaleUVRowDown4_RVV.

Bug: libyuv:956
Change-Id: If9604a6aadf681193f282507602c57c726332202
Signed-off-by: Darren Hsieh <darren.hsieh@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4601684
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-06-13 00:40:39 +00:00
Chong Gu
29bcf021c6 [Fuchsia] Replace downloading gn SDK with core SDK
Bug: chromium:1432399
Change-Id: Ie1a752a88fd6ab46b0fe940a730ff92583bf0c52
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4608185
Commit-Queue: Chong Gu <chonggu@google.com>
Reviewed-by: Wan-Teh Chang <wtc@google.com>
2023-06-12 19:45:55 +00:00
Prashanth Swaminathan
3df4762034 Roll chromium_revision 37b823771a..9063d86518 (1154522:1155374)
Change log: 37b823771a..9063d86518
Full diff: 37b823771a..9063d86518

Changed dependencies
* gn_vesion: git_revision:e3978de3e8dafb50a2b11efa784e08699a43faf8..git_revision:1cd35c1b722472e714c30d12031af81443bb20ae
* src/base: 272deef6ff..80d6bd7cc6
* src/build: 2109611dca..1a35bf2972
* src/buildtools: 61b4b91ea9..3819ac6f3d
* src/buildtools/linux64: git_revision:e3978de3e8dafb50a2b11efa784e08699a43faf8..git_revision:1cd35c1b722472e714c30d12031af81443bb20ae
* src/buildtools/mac: git_revision:e3978de3e8dafb50a2b11efa784e08699a43faf8..git_revision:1cd35c1b722472e714c30d12031af81443bb20ae
* src/buildtools/third_party/libc++/trunk: f8279b0108..055b2e17ae
* src/buildtools/win: git_revision:e3978de3e8dafb50a2b11efa784e08699a43faf8..git_revision:1cd35c1b722472e714c30d12031af81443bb20ae
* src/ios: a83eba10ed..0b26248597
* src/testing: 46b658b81f..a1a760920e
* src/third_party: 516d319c79..84f7bf74a3
* src/third_party/androidx: 8EW3iHyrSSsOJnUnVY3yKilFduKdTrYqL9ScMbo_kJsC..8QRU_3WDdK0VVAHe7demCsR7qoa8ba2DVzXsXGxWQKkC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/e1a21f8fc3..3173309024
* src/third_party/depot_tools: e445df0bfb..3cf9180560
* src/third_party/kotlinc/current: J3BAlA7yf4corBopDhlwuT9W4jR1Z9R55KD3BUTVldQC..QSwE30iq_KLKxImEnQEwDMQM_cU10eZSAwNobs8BEsoC
* src/tools: 07a3f9982d..31bd9a2aa6
DEPS diff: 37b823771a..9063d86518/DEPS

No update to Clang.

BUG=None
Change-Id: I74cc89202146d05703df10a3a713b52f4c2cb0cd
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4603228
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
Commit-Queue: Prashanth Swaminathan <prashanthsw@google.com>
2023-06-09 06:58:39 +00:00
Prashanth Swaminathan
d573f6451d Remove stale Android NDK and fix docs [2/2]
Now that chromium/base has rolled and switched the android_ndk_root to
the new android_toolchain directory, remove the stale Android NDK. Fix
up documentation that refers to stale paths and suggest the appropriate
tools to perform objdump operations.

Bug: 1448383
Test: Verified build of LibYUV.
Change-Id: I7b674052b1ef0914cf4ee81c6c6d62410e5fc569
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4583622
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
Commit-Queue: Prashanth Swaminathan <prashanthsw@google.com>
2023-06-07 21:39:59 +00:00
Prashanth Swaminathan
c1f93246f1 Roll chromium_revision fe131fc50e..37b823771a (1153201:1154522)
Change log: fe131fc50e..37b823771a
Full diff: fe131fc50e..37b823771a

Changed dependencies
* fuchsia_vesion: version:12.20230601.2.1..version:12.20230607.1.1
* src/base: d9d19543d1..272deef6ff
* src/build: e231a4281d..2109611dca
* src/buildtools/third_party/libunwind/trunk: cd144ced35..b5a43ecdac
* src/ios: 3afef852e7..a83eba10ed
* src/testing: e7bca7c48e..46b658b81f
* src/third_party: b48d8f7082..516d319c79
* src/third_party/androidx: E4FpoRyVKBQylOZrO-WBJhq6QTsB91FxVFCO0RExQfYC..8EW3iHyrSSsOJnUnVY3yKilFduKdTrYqL9ScMbo_kJsC
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/db0de40862..e1a21f8fc3
* src/third_party/depot_tools: df2f11113c..e445df0bfb
* src/third_party/freetype/src: 80a507a6b8..4e1c0e8fba
* src/third_party/icu: a2961dc659..1766524877
* src/third_party/r8: iTbMDX2gRMW4nmoA8J7oToRDDsMcjm6hJNVH-RpYKIoC..4nvRHMrsaaAwaTGCTVhj-rVB4rr7rtMUb01KL83_TA8C
* src/tools: f67a56ec06..07a3f9982d
DEPS diff: fe131fc50e..37b823771a/DEPS

No update to Clang.

BUG=None
Change-Id: Iace3ce59b61f8aa8117e917b421050f3dc05e411
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4599471
Commit-Queue: Prashanth Swaminathan <prashanthsw@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2023-06-07 18:51:25 +00:00
Prashanth Swaminathan
217c8e75a0 Disable the roll of 'android_ndk'
Chromium is being updated to 'android_toolchain', which means the
'android_ndk' DEPS is no longer present. Remove it from the roller until
the transition is complete, then it can be removed from this script
entirely.

Bug: 1448383
Test: Verified manual roll of libyuv.
Change-Id: I4a96e54edba9a077cb5d5214af53de5906bce8f1
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4599468
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Prashanth Swaminathan <prashanthsw@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-06-07 18:45:56 +00:00
Frank Barchard
b08ccb6a83 FP16 to FP32 float conversion row function
Bug: None
Change-Id: I97aab6aafd41c3bf36bfbf33fdcc424e5b3fd6e3
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4590225
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Wan-Teh Chang <wtc@google.com>
2023-06-07 00:02:40 +00:00
Prashanth Swaminathan
1602e4c607 Migrate Android NDK to CIPD [1/2]
The Android NDK dependency is moving to a CIPD bucket to reduce the
checkout cost and to eventually move to NDK v25. This introduces the
NDK into an 'android_toolchain' directory. Following the roll of
chromium/base in this repository, a second change will delete the old
'android_ndk' checkout. As a result, the checkout size of this
repository will temporarily increase.

Bug: 1448383
Test: Verified local builds of LibYUV.
Change-Id: I35a933e2d7853b12e155c5d2b727cd4b1c5474e5
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4583617
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-06-06 00:35:45 +00:00
libyuv-ci-autoroll-builder
557daab3aa Roll chromium_revision d150157638..fe131fc50e (1151057:1153201)
Change log: d150157638..fe131fc50e
Full diff: d150157638..fe131fc50e

Changed dependencies
* fuchsia_vesion: version:12.20230530.1.1..version:12.20230601.2.1
* src/base: b4c5ce6cb1..d9d19543d1
* src/build: d0c2b4cf4f..e231a4281d
* src/buildtools: edbefcee3d..61b4b91ea9
* src/buildtools/third_party/libc++abi/trunk: 5c8dbff7a4..899caea381
* src/ios: 241921896b..3afef852e7
* src/testing: a13817e1ea..e7bca7c48e
* src/third_party: 824e26c9fc..b48d8f7082
* src/third_party/androidx: Wr5b9WJiFAzJcmjmvQIePIxk5IgpDl62kaGY_SiLxJEC..E4FpoRyVKBQylOZrO-WBJhq6QTsB91FxVFCO0RExQfYC
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/dd5219451c..6cf9820837
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/9f3ef9c2ea..db0de40862
* src/third_party/depot_tools: 05ab73be51..df2f11113c
* src/third_party/jdk: 2Of9Pe_OdO4xoAATuiLDiMVNebKTNO3WrwJGqil4RosC..-1zDGMOzS_Qsja50TakJCSqN9C9TYppQrsny4HATSQwC
* src/third_party/r8: 4Oq32DG2vuDh7Frxj6tH5xyi77sVgBWpvvl4hwvZRR4C..iTbMDX2gRMW4nmoA8J7oToRDDsMcjm6hJNVH-RpYKIoC
* src/third_party/turbine: Foa7uRpVoKr4YoayCKc9EERkjpmGOE3DAUTWFLL7gKEC..G8Cku1fztaDd9to_8gk3PNWM2iRacAxD9zcUAgUPUEAC
* src/tools: 916dfffd61..f67a56ec06
DEPS diff: d150157638..fe131fc50e/DEPS

No update to Clang.

BUG=None

Change-Id: Ifc09a530b82d61021a7acd5a2bc417da1deb226d
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4588992
Commit-Queue: libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com <libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Bot-Commit: libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com <libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
2023-06-05 14:22:52 +00:00
Vignesh Venkatasubramanian
2a6cb74319 Add macro for I012ToAB30Matrix
Uses I012ToAR30Matrix with u and v swapped and with VU suffixed
constants.

Bug: b/268505204
Change-Id: If0d189891be3053da776feb48d49fa68a9866037
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4581869
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-06-02 01:05:40 +00:00
Frank Barchard
157b153b60 Fix tidy warning that uint32_t dither4 should not be const
- Remove const from uint32_t dither4 parameter to fix clang-tidy warning
- Apply clang format
- Bump version
- Remove unused MMI source; superceded by MSA

Bug: None
Change-Id: Id49991db25bca4e99590b415312542d917471c62
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4581882
Reviewed-by: Wan-Teh Chang <wtc@google.com>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2023-06-02 00:42:02 +00:00
Vignesh Venkatasubramanian
c0f64c14ca Add I412/I212 to I420 functions
They re-use the same method as I410/I210 to I420 with a depth
value of 12 instead of 10.

Bug: b/268505204
Change-Id: I299862b4556461d8c95f0fc1dcd5260e1c1f25cd
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4581867
Commit-Queue: Vignesh Venkatasubramanian <vigneshv@google.com>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2023-06-01 19:50:16 +00:00
Vignesh Venkatasubramanian
1cd65f7865 Android.bp: Add -DLIBYUV_UNLIMITED_DATA flag
This was added in the android internal master here: ag/19780505.

This keeps the upstream checkout in sync with the android
snapshot.

Bug: b/268505204
Change-Id: Ie821ebb6914c208b0cfa7127faf56ad2bcece6ac
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4581052
Reviewed-by: Wan-Teh Chang <wtc@google.com>
Commit-Queue: Vignesh Venkatasubramanian <vigneshv@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
2023-06-01 19:25:27 +00:00
Brian Sheedy
f713f69be9 Update vpython3 requests
Updates the requests version in .vpython3 to the latest available in
order to pick up a security fix. Also changes the requested version to
the Python 3-only one since Python 2 support was removed from requests.

Bug: chromium:1448265
Change-Id: I6eb4081735aee77f38793a00e9f17bdd32a52c58
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4581054
Commit-Queue: Mirko Bonadei <mbonadei@chromium.org>
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
2023-06-01 19:06:40 +00:00
Mirko Bonadei
47731743bf Use walleye instead of bullhead
Bug: None
Change-Id: Iaa17f73afca4db09e6c176b7771c02dfbcea6cb0
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4580128
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
Commit-Queue: Mirko Bonadei <mbonadei@chromium.org>
2023-06-01 15:43:00 +00:00
Mirko Bonadei
06bd62e9b1 Move from Mac-10.15 to Mac-12
Bug: chromium:1273556
Change-Id: Idaf61210ac9028ac664fde5c369d3de3fc092819
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4577786
Commit-Queue: Mirko Bonadei <mbonadei@chromium.org>
Reviewed-by: Jeremy Leconte <jleconte@google.com>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
2023-06-01 12:12:34 +00:00
Prashanth Swaminathan
ee2819a6ba Roll chromium_revision 84f3f93bac..d150157638 (1140362:1151057)
Change log: 84f3f93bac..d150157638
Full diff: 84f3f93bac..d150157638

Changed dependencies
* fuchsia_vesion: version:10.20221110.2.1..version:12.20230530.1.1
* gn_vesion: git_revision:6f13aaac55a977e1948910942675c69f2b4f7a94..git_revision:e3978de3e8dafb50a2b11efa784e08699a43faf8
* ninja_vesion: version:2@1.8.2.chromium.3..version:2@1.11.1.chromium.6
* reclient_vesion: re_client_version:0.81.1.0853992-gomaip..re_client_version:0.107.1.0b39c4c-gomaip
* src/base: 9d22e0aa98..b4c5ce6cb1
* src/build: 76a2b25f9d..d0c2b4cf4f
* src/buildtools: a26ff314e9..edbefcee3d
* src/buildtools/linux64: git_revision:6f13aaac55a977e1948910942675c69f2b4f7a94..git_revision:e3978de3e8dafb50a2b11efa784e08699a43faf8
* src/buildtools/mac: git_revision:6f13aaac55a977e1948910942675c69f2b4f7a94..git_revision:e3978de3e8dafb50a2b11efa784e08699a43faf8
* src/buildtools/reclient: re_client_version:0.81.1.0853992-gomaip..re_client_version:0.107.1.0b39c4c-gomaip
* src/buildtools/third_party/libc++abi/trunk: 66967963e9..5c8dbff7a4
* src/buildtools/third_party/libunwind/trunk: 88bd83fe09..cd144ced35
* src/buildtools/win: git_revision:6f13aaac55a977e1948910942675c69f2b4f7a94..git_revision:e3978de3e8dafb50a2b11efa784e08699a43faf8
* src/ios: 4acfa83682..241921896b
* src/testing: 1db5c29c08..a13817e1ea
* src/third_party: 223a8c15c8..824e26c9fc
* src/third_party/android_build_tools/aapt2: version:3.6.0-alpha03-5516695-cr0..STY0BXlZxsEhudnlXQFed-B5UpwehcoM0sYqor6qRqsC
* src/third_party/android_deps/libs/com_google_auto_value_auto_value_annotations: version:2@1.9.cr1..version:2@1.10.1.cr1
* src/third_party/android_deps/libs/com_google_errorprone_error_prone_annotations: version:2@2.14.0.cr1..version:2@2.18.0.cr1
* src/third_party/android_deps/libs/com_google_guava_guava: version:2@31.0.1-jre.cr1..version:2@31.1-jre.cr1
* src/third_party/android_deps/libs/org_ow2_asm_asm: version:2@9.2.cr1..version:2@9.5.cr1
* src/third_party/android_deps/libs/org_ow2_asm_asm_analysis: version:2@9.2.cr1..version:2@9.5.cr1
* src/third_party/android_deps/libs/org_ow2_asm_asm_commons: version:2@9.2.cr1..version:2@9.5.cr1
* src/third_party/android_deps/libs/org_ow2_asm_asm_tree: version:2@9.2.cr1..version:2@9.5.cr1
* src/third_party/android_deps/libs/org_ow2_asm_asm_util: version:2@9.2.cr1..version:2@9.5.cr1
* src/third_party/android_deps/libs/org_robolectric_annotations: version:2@4.8.1.cr1..version:2@4.10.3.cr1
* src/third_party/android_deps/libs/org_robolectric_junit: version:2@4.8.1.cr1..version:2@4.10.3.cr1
* src/third_party/android_deps/libs/org_robolectric_nativeruntime: version:2@4.8.1.cr1..version:2@4.10.3.cr1
* src/third_party/android_deps/libs/org_robolectric_pluginapi: version:2@4.8.1.cr1..version:2@4.10.3.cr1
* src/third_party/android_deps/libs/org_robolectric_plugins_maven_dependency_resolver: version:2@4.8.1.cr1..version:2@4.10.3.cr1
* src/third_party/android_deps/libs/org_robolectric_resources: version:2@4.8.1.cr1..version:2@4.10.3.cr1
* src/third_party/android_deps/libs/org_robolectric_robolectric: version:2@4.8.1.cr1..version:2@4.10.3.cr1
* src/third_party/android_deps/libs/org_robolectric_sandbox: version:2@4.8.1.cr1..version:2@4.10.3.cr1
* src/third_party/android_deps/libs/org_robolectric_shadowapi: version:2@4.8.1.cr1..version:2@4.10.3.cr1
* src/third_party/android_deps/libs/org_robolectric_shadows_framework: version:2@4.8.1.cr1..version:2@4.10.3.cr1
* src/third_party/android_deps/libs/org_robolectric_shadows_playservices: version:2@4.8.1.cr1..version:2@4.10.3.cr1
* src/third_party/android_deps/libs/org_robolectric_utils: version:2@4.8.1.cr1..version:2@4.10.3.cr1
* src/third_party/android_deps/libs/org_robolectric_utils_reflector: version:2@4.8.1.cr1..version:2@4.10.3.cr1
* src/third_party/android_ndk: https://chromium.googlesource.com/android_ndk.git/+log/8388a2be54..310956bd12
* src/third_party/android_sdk/public: IPzAG-uU5zVMxohpg9-7-N0tQC1TCSW1VbrBFw7Ld04C..EWnL2r7oV5GtE9Ef7GyohyFam42wtMtEKYU4dCb3U1YC
* src/third_party/android_sdk/public: eo5KvW6UVor92LwZai8Zulc624BQZoCu-yn7wa1z_YcC..YWMYkzyxGBgVsty0GhXL1oxbY0pGXQIgFc0Rh7ZMRPYC
* src/third_party/androidx: c8XCgnDa6lP6C1IcJKADz2cE9moc4Ohv4JGKUaWotKYC..Wr5b9WJiFAzJcmjmvQIePIxk5IgpDl62kaGY_SiLxJEC
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/1b724a6b8c..dd5219451c
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/e2a65ffc7d..9f3ef9c2ea
* src/third_party/depot_tools: bcb9577a46..05ab73be51
* src/third_party/freetype/src: 9127c68f59..80a507a6b8
* src/third_party/harfbuzz-ng/src: 2175f5d050..8df5cdbcda
* src/third_party/icu: d8daa943f6..a2961dc659
* src/third_party/jdk: PfRSnxe8Od6WU4zBXomq-zsgcJgWmm3z4gMQNB-r2QcC..2Of9Pe_OdO4xoAATuiLDiMVNebKTNO3WrwJGqil4RosC
* src/third_party/kotlin_stdlib: Mg7371mEUwDQH4_z29HdWqYWVlXN6t2dXX0kIutg_SwC..z4_AYYz2Tw5GKikuiDLTuxxf0NJVGLkC3CVcyiIpc-gC
* src/third_party/kotlinc/current: bCZedwoM-hb1pP1QKzA3P5aR4zjZltqLj4JQpmQsHuUC..J3BAlA7yf4corBopDhlwuT9W4jR1Z9R55KD3BUTVldQC
* src/third_party/ninja: version:2@1.8.2.chromium.3..version:2@1.11.1.chromium.6
* src/third_party/objenesis: 9e367f55e5a65781ee77bfcbaa88fb82b30e75c0..tknDblENYi8IaJYyD6tUahUyHYZlzJ_Y74_QZSz4DpIC
* src/third_party/r8: szXK3tCGU7smsNs4r2mGqxme7d9KWLaOk0_ghbCJxUQC..4Oq32DG2vuDh7Frxj6tH5xyi77sVgBWpvvl4hwvZRR4C
* src/third_party/r8/d8: Qn31g4m2cofkyvGgm46Uzkzds5DKdNYrdPePwRkVnv4C..PwglNZFRNPkBBXdnY9NfrZFk2ULWDTRxhV9rl2kvkpUC
* src/third_party/robolectric: iC6RDM5EH3GEAzR-1shW_Mg0FeeNE5shq1okkFfuuNQC..hzetqh1qFI32FOgQroZvGcGdomrgVBJ6WKRnl1KFw6EC
* src/third_party/sqlite4java: 889660698187baa7c8b0d79f7bf58563125fbd66..LofjKH9dgXIAJhRYCPQlMFywSwxYimrfDeBmaHc-Z5EC
* src/third_party/turbine: Om6yIEXgJxuqghErK29h9RcMH6VaymMbxwScwXmcN6EC..Foa7uRpVoKr4YoayCKc9EERkjpmGOE3DAUTWFLL7gKEC
* src/tools: da6696c8e4..916dfffd61
Added dependencies
* src/third_party/android_deps/libs/org_robolectric_nativeruntime_dist_compat
* src/third_party/android_deps/libs/org_bouncycastle_bcprov_jdk18on
Removed dependency
* src/third_party/android_deps/libs/org_bouncycastle_bcprov_jdk15on
DEPS diff: 84f3f93bac..d150157638/DEPS

Clang version changed llvmorg-17-init-10134-g3da83fba:llvmorg-17-init-12166-g7586aeab
Details: 84f3f93bac..d150157638/tools/clang/scripts/update.py

BUG=None
Change-Id: I5a02f5e9137268bf131f472d05af8b29311ec50e
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4576442
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
Commit-Queue: Prashanth Swaminathan <prashanthsw@google.com>
2023-05-31 14:15:27 +00:00
Prashanth Swaminathan
e5a976f6f5 Add //third_party/cpu_features to DEPS
Chromium is migrating uses of //third_party/android_ndk:cpu_features to
//third_party/cpu_features:ndk_compat upstream. Add the repository here
to fix the roller.

Bug: 1446042
Change-Id: I89344ed308b8168547f26f217f05013c87b60bb1
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4576444
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
Commit-Queue: Prashanth Swaminathan <prashanthsw@google.com>
2023-05-31 13:51:50 +00:00
Prashanth Swaminathan
564dca8cc5 Handle DEPS targets that target the HEAD revision
Some targets in DEPS files do not specify a revision and always pull the
HEAD revision instead. In these cases, the URL is not split by '@'.
Handle these cases by assuming HEAD.

Test: Verified local roll attempt does not fail when processing DEPS.
Change-Id: I649195d90933ed58a18d76c20ac7d80ab01c295d
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4568777
Commit-Queue: Prashanth Swaminathan <prashanthsw@google.com>
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
2023-05-30 17:39:51 +00:00
Bruce Lai
4b6373d189 [RVV] Use LMUL=2 for I4{44,22}To{ARGB,RGB24,RGBA} conversion
Replace vv+m1(LMUL=1) with vx+m2(LMUL=2).
Some kernels' asm code might contain register spill(1~2).

Change-Id: Ie3655f250d17f37c1ba9039474ece43ede98ede0
Signed-off-by: Bruce Lai <bruce.lai@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4573159
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2023-05-30 09:42:10 +00:00
Darren Hsieh
d14bd701c8 [RVV] Enable CopyRow_RVV, InterpolateRow_RVV, {Merge,Split}UVRow_RVV
* Run on SiFive internal FPGA:

MergeUVPlane_Opt(~6x vs scalar)
SplitUVPlane_Opt(~6x vs scalar)
TestCopyPlane(~8x vs scalar)
ARGBInterpolate0_Opt(~10x vs scalar)
ARGBInterpolate64_Opt(~9x vs scalar)
ARGBInterpolate168_Opt(~9x vs scalar)
ARGBInterpolate192_Opt(~8.5x vs scalar)
ARGBInterpolate255_Opt(~8x vs scalar)

Bug: libyuv:956
Change-Id: I8372341865f75f42e30371ef943d5c2e4be7b79a
Signed-off-by: Darren Hsieh <darren.hsieh@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4574186
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-05-30 09:10:35 +00:00
Frank Barchard
78d168054b Remove extraneous quote from clobber list
Bug: None
Change-Id: Ie20574d0f9c8c2f074247405b294b49c3406448d
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4568770
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
2023-05-30 09:03:05 +00:00
Justin Green
0e111d2c58 Wrap neon registers in {} for the neon MT2T unpack implementation. Some compilers throw a syntax error otherwise.
Change-Id: Ic169dcfe4d9bb9bf6d0dcae977d6cf510a7a60bf
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4568904
Commit-Queue: Justin Green <greenjustin@google.com>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2023-05-26 17:12:02 +00:00
Frank Barchard
22c7a51452 Fix SplitRGB clobber list to include all registers used
Bug:  None
Change-Id: Icac4becb0537903ab87495fb0e2a2b750e1eca4f
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4563355
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: David Gao <davidgao@google.com>
2023-05-24 21:44:59 +00:00
Wan-Teh Chang
dcbe082070 Save boxwidth - minboxwidth in a local variable
Avoid repetitions of the expression boxwidth - minboxwidth.

Change-Id: Ib53fb6b06a926b80ff9a64cc5d499aeef0894c99
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4408062
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2023-05-22 19:10:13 +00:00
Bruce Lai
de3e7fd147 Manually remove rounding value inside yb(yuvconstant) in row_rvv.cc
After libyuv:961 is completed, yb(yuvconstant) will no longer contain rounding bias +32 for fixed-point.
This CL removes rounding bias(-32) manmually in row_rvv.cc.
Hence, all fixed-point related codes' rounding mode is changed to round-to-nearest-up "0" in row_rvv.cc.

Also, replace vwmul+vnsrl w/ vmulh in I400ToARGBRow_RVV.

Bug: libyuv:956, libyuv:961
Change-Id: I10e34668a2332e38393e9d68414f07aafb6c7cf7
Signed-off-by: Bruce Lai <bruce.lai@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4550591
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2023-05-22 18:15:27 +00:00
Wan-Teh Chang
179b0203e5 Enable {J400/I400}ToARGBRow_RVV
Run on SiFive internal FPGA*:

I400ToARGB_Opt (~8x vs scalar)
J400ToARGB_Opt (~10x vs scalar)

LIBYUV_WIDTH=1280 LIBYUV_HEIGHT=720 LIBYUV_REPEAT=10

Bug: libyuv:956, libyuv:961
Change-Id: If4e21ec85c4ff79083ec16a6faae0e457129a8de
Signed-off-by: Bruce Lai <bruce.lai@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4544972
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Wan-Teh Chang <wtc@google.com>
2023-05-20 23:29:33 +00:00
Lu Wang
8670bcf17f Optimize the following 19 functions with LSX in row_lsx.cc.
UYVYToYRow_LSX, UYVYToUVRow_LSX, UYVYToUV422Row_LSX,
ARGBToUVRow_LSX, ARGBToRGB24Row_LSX, ARGBToRAWRow_LSX,
ARGBToRGB565Row_LSX, ARGBToARGB1555Row_LSX, ARGBToARGB4444Row_LSX,
ARGBToUV444Row_LSX, ARGBMultiplyRow_LSX, ARGBAddRow_LSX,
ARGBSubtractRow_LSX, ARGBAttenuateRow_LSX, ARGBToRGB565DitherRow_LSX,
ARGBShuffleRow_LSX, ARGBShadeRow_LSX, ARGBGrayRow_LSX,
ARGBSepiaRow_LSX

Bug: libyuv:913
Change-Id: I02c0c9d68b229c4a66c96837e9b928c2f5dda1f3
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4546814
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-05-19 18:55:58 +00:00
Frank Barchard
a37799344d ARGBToI420Alpha function to convert ARGB to I420 with Alpha
Bug: b/281866362
Change-Id: Ic1093a887fb483f134c78909cf1ee7495e7345ba
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4534100
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Wan-Teh Chang <wtc@google.com>
2023-05-17 00:23:24 +00:00
Bruce Lai
11d4536002 Enable I{422,444}AlphaToARGBRow_RVV & ARGBAttentuateRow_RVV
Run on SiFive internal FPGA:

I444AlphaToARGB_Opt (~16x vs scalar)
I422AlphaToARGB_Opt (~10x vs scalar)
ARGBAttenuate_Opt (~3x vs scalar)

LIBYUV_WIDTH=1280 LIBYUV_HEIGHT=720 LIBYUV_REPEAT=10

Change-Id: I0046eb7af8104bc8e13cee1cb91a19f90940d5b0
Signed-off-by: Bruce Lai <bruce.lai@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4535657
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2023-05-16 19:20:49 +00:00
Frank Barchard
6a68b18a96 Bump version and apply clang format
Bug: libyuv:956
Change-Id: I2375a02583789af2a5f13f8dba6c663d5975aaa9
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4522352
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-05-11 11:27:28 +00:00
Bruce Lai
59eae49f17 Enable ARGBToYMatrixRow_RVV/RGBAToYMatrixRow_RVV/RGBToYMatrixRow_RVV
Run on SiFive internal FPGA:

ARGBToJ400_Opt (~6x vs scalar)
RGBAToJ400_Opt (~6x vs scalar)
RGB24ToJ400_Opt (~5.5x vs scalar)

LIBYUV_WIDTH=1280 LIBYUV_HEIGHT=720 LIBYUV_REPEAT=10

Change-Id: Ia3ce8cea7962fbd8618cc23e850a7913c9cabf4f
Signed-off-by: Bruce Lai <bruce.lai@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4521783
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2023-05-11 10:17:51 +00:00
Darren Hsieh
497ea35688 Enable I444To{ARGB,RGB24}Row_RVV
Run on SiFive internal FPGA:

I444ToARGB_Opt (~16x vs scalar)
I444ToRGB24_Opt (~10x vs scalar)

LIBYUV_WIDTH=1280 LIBYUV_HEIGHT=720 LIBYUV_REPEAT=10

Change-Id: Idae7dc46ef648beaa14b58ba3eb56b67b17c9b3b
Signed-off-by: Darren Hsieh <darren.hsieh@sifive.com>
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4520761
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2023-05-10 19:50:56 +00:00