Zuxy Meng
f68e1afc1b
avcodec/loongarch/h264dsp: Fix edge cases for bi-weight on loongarch
...
S16 saturating sum must be computed dot-product-first. The LSX/LASX code
accumulated the offset into the dot product with wrapping vmaddwev/wod,
so large-magnitude sums wrapped instead of saturating.
Accumulate the dot product from zero (wrapping is exact: the dot product
cannot overflow S16 for 8-bit with log2_denom < 7), then add the offset
with a saturating vsadd.
Also tweaked the checkasm test itself to cover only valid width and height
combo. This fixes bi-weight checkasm test for all currently available
asm implementations.
Signed-off-by: Zuxy Meng <zuxy.meng@gmail.com >
2026-10-01 17:49:31 -07:00
..
2026-09-24 15:47:09 +00:00
2026-10-01 17:49:31 -07:00
2026-10-01 17:49:31 -07:00
2026-09-10 18:23:50 +00:00
2026-09-19 18:50:08 +00:00
2026-10-01 17:49:31 -07:00
2026-10-01 17:49:31 -07:00
2026-09-25 13:48:24 -03:00
2026-10-01 17:49:31 -07:00
2026-10-01 17:49:31 -07:00
2026-09-19 13:40:52 +00:00
2026-09-24 15:26:13 +00:00
2026-09-17 21:40:25 +00:00
2026-09-23 23:14:38 +00:00
2026-09-12 23:52:20 +00:00
2026-09-12 23:52:20 +00:00
2026-09-12 23:52:20 +00:00
2026-08-31 19:22:59 +02:00
2026-08-31 19:22:59 +02:00
2026-09-12 23:52:20 +00:00
2026-09-12 23:52:20 +00:00
2026-09-28 22:43:05 +00:00
2026-09-12 23:52:20 +00:00
2026-09-09 18:06:23 +00:00
2026-09-12 23:52:20 +00:00
2026-08-10 22:01:35 +00:00
2026-08-19 15:29:46 +00:00
2026-08-19 15:29:46 +00:00
2026-09-09 18:06:23 +00:00
2026-09-02 22:31:34 +02:00
2026-08-26 15:53:44 +00:00
2026-09-09 18:06:23 +00:00
2026-08-26 15:53:44 +00:00
2026-09-28 05:54:41 +00:00
2026-09-28 05:54:41 +00:00
2026-09-12 03:36:22 +00:00
2026-09-20 22:59:48 +09:00
2026-09-25 01:13:25 +09:00
2026-09-28 01:08:27 +00:00
2026-09-28 01:08:27 +00:00
2026-09-12 23:52:20 +00:00
2026-09-12 23:52:20 +00:00
2026-08-21 03:35:19 +00:00
2026-08-21 03:35:19 +00:00
2026-09-22 07:46:17 +00:00
2026-10-01 14:31:15 +00:00
2026-10-01 14:31:15 +00:00
2026-09-25 22:12:25 +00:00
2026-09-10 18:23:50 +00:00
2026-08-13 20:46:10 +00:00
2026-09-29 10:54:54 +00:00
2026-08-11 20:20:16 +02:00
2026-08-11 20:20:16 +02:00
2026-08-11 20:20:16 +02:00
2026-09-12 23:52:20 +00:00
2026-09-12 23:52:20 +00:00
2026-09-26 00:03:12 +00:00
2026-09-26 00:03:12 +00:00
2026-09-06 20:55:01 +00:00
2026-09-06 20:55:01 +00:00
2026-09-16 22:21:13 +00:00
2026-09-24 20:06:23 +00:00
2026-09-28 05:54:41 +00:00
2026-09-28 05:54:41 +00:00
2026-10-01 14:31:15 +00:00
2026-08-14 10:31:57 -03:00
2026-09-16 21:16:58 +00:00
2026-08-19 22:35:29 +00:00
2026-09-05 11:59:49 +00:00
2026-09-05 11:59:49 +00:00
2026-09-05 11:59:49 +00:00
2026-08-21 08:25:47 +00:00
2026-08-21 08:25:47 +00:00
2026-08-21 08:25:47 +00:00
2026-09-05 11:59:49 +00:00
2026-09-05 11:59:49 +00:00
2026-09-05 11:59:49 +00:00
2026-09-05 11:59:49 +00:00
2026-09-05 11:59:49 +00:00
2026-09-15 12:23:15 +00:00
2026-09-12 23:52:20 +00:00
2026-09-21 21:23:33 +00:00
2026-09-19 18:50:08 +00:00
2026-09-27 18:38:11 -03:00
2026-09-28 03:37:07 +00:00
2026-09-30 17:37:56 -05:00
2026-09-10 13:08:54 +02:00
2026-09-19 18:51:29 +00:00
2026-09-20 22:59:46 +09:00
2026-09-06 00:48:26 +02:00
2026-09-06 00:48:26 +02:00
2026-09-06 00:48:26 +02:00
2026-09-06 00:48:26 +02:00
2026-09-06 00:48:26 +02:00
2026-09-16 21:16:18 +00:00
2026-10-01 14:31:15 +00:00
2026-09-23 02:04:11 +00:00
2026-09-22 21:30:07 +00:00
2026-08-14 10:31:57 -03:00
2026-08-14 18:28:09 +02:00
2026-08-28 18:50:16 +00:00
2026-09-12 23:52:20 +00:00
2026-09-11 15:59:03 +00:00
2026-09-11 15:59:03 +00:00
2026-09-08 23:59:36 +00:00
2026-09-24 11:05:34 +09:00
2026-09-30 14:37:59 +02:00
2026-09-30 14:37:59 +02:00
2026-09-21 21:23:33 +00:00
2026-08-11 21:16:28 +02:00
2026-08-11 21:16:28 +02:00
2026-08-11 21:16:28 +02:00
2026-08-31 18:13:21 +00:00
2026-08-26 00:41:35 +00:00
2026-08-13 00:29:25 +02:00
2026-08-13 00:29:25 +02:00
2026-08-31 18:13:21 +00:00
2026-08-31 18:13:21 +00:00
2026-09-20 14:45:46 +09:00
2026-08-13 00:29:25 +02:00
2026-09-23 19:57:52 +00:00
2026-09-19 18:50:08 +00:00
2026-08-13 00:29:25 +02:00
2026-08-13 00:29:25 +02:00
2026-08-13 00:29:25 +02:00
2026-08-16 18:35:04 +02:00
2026-08-16 18:35:04 +02:00
2026-09-19 18:51:08 +00:00
2026-09-16 21:12:04 +00:00
2026-09-24 12:33:16 -07:00
2026-08-12 20:05:32 +02:00
2026-08-12 20:05:32 +02:00
2026-08-12 20:05:32 +02:00
2026-08-17 14:57:07 +09:00
2026-08-21 08:25:47 +00:00
2026-09-23 18:57:28 +00:00
2026-09-19 18:47:12 +00:00
2026-08-31 10:56:08 +00:00
2026-09-12 23:52:20 +00:00
2026-09-07 12:52:48 -03:00
2026-08-19 09:25:40 -03:00
2026-08-12 02:50:23 +00:00
2026-09-23 19:07:27 +00:00
2026-08-14 10:31:57 -03:00
2026-09-14 12:44:07 +00:00
2026-09-14 12:44:07 +00:00
2026-08-17 14:49:03 -03:00
2026-09-21 21:23:33 +00:00
2026-10-01 19:45:34 +00:00
2026-09-12 23:52:20 +00:00
2026-10-01 02:14:48 +00:00
2026-09-30 13:40:35 -03:00
2026-09-26 14:15:44 +00:00
2026-09-19 13:40:52 +00:00
2026-08-14 10:31:57 -03:00
2026-09-11 13:22:28 -03:00
2026-09-30 14:37:59 +02:00
2026-08-30 03:23:09 +00:00
2026-09-08 23:17:55 +00:00
2026-09-09 11:29:23 +08:00
2026-08-30 03:23:09 +00:00
2026-09-17 03:10:50 +00:00
2026-09-28 03:41:46 +00:00
2026-09-30 14:37:59 +02:00
2026-09-30 14:37:59 +02:00
2026-09-30 14:37:59 +02:00
2026-09-30 14:37:59 +02:00
2026-09-19 18:47:12 +00:00
2026-09-24 12:35:59 +00:00
2026-08-11 21:17:13 +02:00
2026-08-11 21:17:13 +02:00
2026-10-01 14:31:15 +00:00
2026-10-01 14:31:15 +00:00
2026-09-27 18:38:11 -03:00
2026-09-12 23:52:20 +00:00
2026-09-19 13:40:52 +00:00
2026-09-19 13:40:52 +00:00
2026-09-19 13:40:52 +00:00
2026-09-27 18:38:11 -03:00
2026-09-30 14:37:59 +02:00
2026-09-28 03:48:31 +00:00
2026-09-19 01:16:28 +00:00
2026-09-14 12:58:17 +02:00
2026-09-14 12:58:17 +02:00
2026-09-14 12:58:17 +02:00
2026-09-30 12:01:02 +00:00
2026-09-11 15:59:03 +00:00
2026-09-16 21:20:25 +00:00
2026-09-12 23:52:20 +00:00
2026-09-27 18:38:11 -03:00
2026-09-27 18:38:11 -03:00
2026-09-24 08:02:22 +09:00
2026-09-10 17:16:20 +00:00
2026-09-24 08:02:22 +09:00
2026-09-28 03:36:07 +00:00
2026-09-24 11:05:37 +09:00
2026-09-28 03:36:07 +00:00
2026-09-05 01:38:48 +00:00
2026-08-14 10:41:40 +02:00
2026-09-20 13:48:19 +00:00
2026-09-25 16:14:35 +00:00
2026-09-12 03:20:09 +00:00
2026-08-10 19:52:20 +02:00
2026-09-24 08:02:22 +09:00
2026-09-12 23:52:20 +00:00
2026-09-12 23:52:20 +00:00
2026-08-16 18:35:04 +02:00
2026-09-12 23:52:20 +00:00
2026-08-13 13:17:59 +02:00
2026-09-07 03:57:59 +00:00
2026-09-07 03:57:59 +00:00
2026-09-29 17:46:34 +02:00
2026-09-12 23:52:20 +00:00
2026-09-21 21:23:33 +00:00
2026-08-28 18:50:16 +00:00
2026-09-28 05:54:41 +00:00
2026-09-23 18:56:12 +00:00
2026-08-10 20:22:42 +02:00
2026-08-21 08:25:47 +00:00
2026-08-21 08:25:47 +00:00
2026-08-21 08:25:47 +00:00
2026-08-22 17:48:39 +00:00
2026-09-22 16:21:45 +00:00
2026-09-22 16:21:45 +00:00
2026-09-22 16:21:45 +00:00
2026-09-22 16:21:45 +00:00
2026-09-06 00:48:26 +02:00
2026-10-01 14:31:15 +00:00
2026-09-19 17:46:51 +00:00
2026-09-12 05:25:45 +02:00
2026-09-12 03:20:09 +00:00
2026-09-12 03:20:09 +00:00
2026-09-20 17:19:28 +09:00
2026-08-28 13:01:39 +00:00
2026-09-20 11:43:58 +00:00
2026-08-17 14:57:07 +09:00
2026-08-17 14:57:07 +09:00
2026-08-15 18:02:17 +09:00
2026-08-17 06:48:49 +00:00
2026-09-20 11:59:51 +09:00
2026-08-17 14:57:07 +09:00
2026-09-20 14:45:56 +09:00
2026-09-17 23:08:43 +02:00
2026-09-20 17:19:28 +09:00
2026-09-20 17:51:47 +09:00
2026-09-24 15:26:13 +00:00
2026-09-24 11:05:30 +09:00
2026-09-06 00:48:26 +02:00
2026-08-31 13:42:52 +00:00
2026-09-28 01:08:27 +00:00
2026-09-28 03:32:05 +00:00