Chennes
74d4f0ed66
[BugFix] Fix make_int sign-extending negative int8 lanes ( #2438 )
...
T.fill of an int8 buffer with a negative scalar (other than -1) silently
wrote only 1 of every 4 elements correctly and clobbered the other 3 to
-1. The vectorized fill packs four int8 lanes into one 32-bit store via
make_int(v,v,v,v); a negative signed char is integer-promoted to int and
sign-extended before the shifts/OR, so its high 1-bits flood the
neighbouring lanes (e.g. make_int(-7,-7,-7,-7) returned 0xFFFFFFF9 =
[-7,-1,-1,-1]).
Build the packed value from explicit unsigned bytes so the sign-extension
bits cannot leak across lanes. Add an int8 negative-fill regression test.
Fixes #2427
2026-06-23 14:40:11 +08:00
..
2026-05-28 20:02:38 +08:00
2025-12-12 17:22:18 +08:00
2026-04-20 16:35:43 +08:00
2026-05-20 15:38:13 +08:00
2026-01-06 02:18:29 +08:00
2026-04-07 23:54:55 +08:00
2026-03-27 11:17:21 +08:00
2026-03-23 19:26:24 +08:00
2026-01-06 02:18:29 +08:00
2026-04-07 23:54:55 +08:00
2026-04-07 23:54:55 +08:00
2025-12-17 14:41:25 +08:00
2026-03-06 17:35:16 +08:00
2026-05-09 16:04:31 +08:00
2026-06-19 23:21:35 +08:00
2026-02-09 17:30:22 +08:00
2025-12-17 14:41:25 +08:00
2026-04-07 23:54:55 +08:00
2025-12-17 14:41:25 +08:00
2026-06-23 14:40:11 +08:00
2026-06-12 17:14:02 +08:00
2026-04-07 23:54:55 +08:00
2026-01-04 15:45:38 +08:00
2026-06-23 14:21:07 +08:00
2026-05-10 21:50:30 +08:00
2026-06-04 14:14:14 +08:00
2026-05-21 16:11:32 +08:00
2026-06-04 18:14:52 +08:00
2026-05-20 15:38:13 +08:00
2026-04-02 12:42:47 +08:00
2026-06-09 00:35:07 +08:00
2026-04-13 12:42:44 +08:00
2026-01-06 02:18:29 +08:00
2026-05-06 23:08:24 +08:00
2025-12-17 14:41:25 +08:00
2026-03-12 17:21:01 +08:00
2026-02-02 18:47:18 +08:00
2026-04-07 23:54:55 +08:00
2026-06-12 17:35:42 +08:00
2026-04-07 23:54:55 +08:00
2026-04-13 12:42:44 +08:00
2025-12-17 14:41:25 +08:00
2026-03-18 13:08:30 +08:00
2026-06-09 00:35:07 +08:00
2026-04-07 23:54:55 +08:00
2026-04-21 18:27:15 +08:00
2026-01-29 23:59:24 +08:00
2026-04-13 16:18:24 +08:00
2026-06-10 17:32:34 +08:00
2026-05-08 17:11:34 +08:00
2026-06-17 13:41:26 +08:00
2026-02-02 18:47:18 +08:00
2026-04-17 16:48:28 +08:00
2026-02-02 18:47:18 +08:00
2026-04-14 15:54:28 +08:00
2026-05-18 14:50:43 +08:00
2026-05-06 23:08:24 +08:00
2025-12-17 14:41:25 +08:00
2026-06-15 15:00:06 +08:00
2026-06-04 18:14:52 +08:00
2026-05-31 03:51:36 +08:00
2026-05-31 03:51:36 +08:00
2026-05-06 23:08:24 +08:00
2026-01-12 22:33:17 +08:00
2026-01-06 02:18:29 +08:00
2026-05-08 17:11:34 +08:00
2026-01-27 20:54:40 +08:00
2026-05-20 15:38:13 +08:00
2025-12-17 14:41:25 +08:00
2026-05-20 15:38:13 +08:00
2026-05-25 17:44:45 +08:00
2026-04-07 23:54:55 +08:00
2026-04-07 23:54:55 +08:00