hanbeom
4147cd29e1
[WebAssembly][FastISel] Emit signed loads for sext of i8/i16/i32 ( #182767 )
...
FastISel currently defaults to unsigned loads for i8/i16/i32 types,
leaving any sign-extension to be handled by a separate instruction. This
patch optimizes this by folding the SExtInst into the LoadInst, directly
emitting a signed load (e.g., i32.load8_s).
When a load has a single SExtInst use, selectLoad emits a signed load
and safely removes the redundantly emitted SExtInst.
Fixed : #180783
2026-02-27 18:31:33 +09:00
..
2026-02-06 18:38:56 +00:00
2023-04-04 12:16:50 +02:00
2024-06-04 08:31:03 +02:00
2025-06-11 22:19:31 -07:00
2024-09-06 16:19:20 +01:00
2025-10-14 22:00:25 +00:00
2025-10-14 22:00:25 +00:00
2024-12-02 17:08:07 -08:00
2023-04-05 01:42:36 -07:00
2024-01-13 14:55:54 -08:00
2025-01-09 22:36:10 -08:00
2025-07-03 07:25:38 +09:00
2025-01-22 22:39:43 -08:00
2024-02-05 14:07:09 +01:00
2025-04-02 20:27:43 +01:00
2026-02-06 00:40:25 +00:00
2024-12-10 09:21:58 -08:00
2025-06-24 11:40:47 -07:00
2024-12-02 17:08:07 -08:00
2025-07-03 11:01:36 +01:00
2025-01-09 22:36:10 -08:00
2025-09-19 10:11:15 -07:00
2025-07-03 07:25:38 +09:00
2025-09-19 10:11:15 -07:00
2025-08-08 11:09:34 +02:00
2025-02-17 09:04:29 +00:00
2024-10-22 13:48:00 -07:00
2025-04-30 15:01:00 +02:00
2025-04-30 15:01:00 +02:00
2025-09-08 15:43:51 +00:00
2026-01-21 09:50:28 +00:00
2026-01-25 18:24:12 -05:00
2026-01-25 18:24:12 -05:00
2025-09-25 14:49:25 -07:00
2024-10-09 14:31:16 -07:00
2024-06-04 08:31:03 +02:00
2024-10-09 14:31:16 -07:00
2025-11-12 04:33:41 +08:00
2025-11-12 04:33:41 +08:00
2026-01-08 15:07:59 +01:00
2026-01-08 15:07:59 +01:00
2023-07-11 15:17:26 -07:00
2026-01-30 12:05:15 -08:00
2025-07-03 07:25:38 +09:00
2024-12-02 17:08:07 -08:00
2023-07-20 00:02:06 -07:00
2025-09-02 16:21:35 -07:00
2024-02-05 14:07:09 +01:00
2024-12-10 06:28:09 -08:00
2024-02-05 17:38:54 -08:00
2023-07-11 10:36:25 -04:00
2025-07-01 20:26:30 -07:00
2025-10-20 09:12:00 +01:00
2025-02-17 09:09:52 +00:00
2025-07-25 12:30:59 -07:00
2025-04-01 10:47:35 -07:00
2024-12-10 06:28:09 -08:00
2026-01-08 16:19:44 -08:00
2023-05-17 17:03:15 +02:00
2026-01-08 15:07:59 +01:00
2026-02-27 18:31:33 +09:00
2024-04-23 17:48:59 +09:00
2025-02-26 14:05:00 -08:00
2024-03-28 04:41:29 +00:00
2024-05-19 14:59:03 +01:00
2024-03-25 18:11:56 -07:00
2026-02-12 13:33:18 -08:00
2025-07-29 09:58:57 +02:00
2025-07-29 09:58:57 +02:00
2026-02-12 13:33:18 -08:00
2026-02-12 13:33:18 -08:00
2026-02-12 13:33:18 -08:00
2026-02-12 13:33:18 -08:00
2025-08-12 09:56:51 +09:00
2023-07-12 14:35:55 +02:00
2025-12-02 18:23:17 +00:00
2025-10-13 17:22:48 -07:00
2025-08-15 12:06:47 -07:00
2026-02-15 20:10:10 +00:00
2024-12-10 09:21:58 -08:00
2024-12-10 06:28:09 -08:00
2025-12-22 11:13:56 +01:00
2024-04-23 17:48:59 +09:00
2023-05-17 10:48:52 +02:00
2024-04-23 17:48:59 +09:00
2025-03-20 18:18:03 -07:00
2025-08-27 11:39:26 +01:00
2024-02-21 03:35:36 +09:00
2026-02-27 18:31:33 +09:00
2025-07-03 11:01:36 +01:00
2022-12-19 13:07:59 +01:00
2025-09-30 08:28:56 +01:00
2025-06-24 11:40:47 -07:00
2023-09-13 12:33:39 +01:00
2023-03-30 20:14:11 -07:00
2024-03-20 08:42:42 -07:00
2025-06-24 11:40:47 -07:00
2025-06-24 11:40:47 -07:00
2024-10-15 02:41:43 +09:00
2025-08-07 13:07:04 -07:00
2024-04-23 17:57:49 +09:00
2024-12-02 17:08:07 -08:00
2024-05-28 16:10:11 -07:00
2024-05-28 16:10:11 -07:00
2024-07-01 19:12:01 -07:00
2023-06-21 10:30:43 -04:00
2025-07-22 15:34:23 -07:00
2025-08-08 11:09:34 +02:00
2023-06-06 07:48:35 +02:00
2025-10-08 11:52:18 -07:00
2024-07-16 20:56:18 +01:00
2026-02-19 09:14:29 -08:00
2026-02-06 12:41:39 -08:00
2026-02-06 12:41:39 -08:00
2025-06-24 11:40:47 -07:00
2026-01-25 18:24:12 -05:00
2024-07-23 11:50:56 -07:00
2021-07-14 11:17:08 -07:00
2025-07-01 15:13:08 -07:00
2025-11-17 10:39:18 +00:00
2025-07-21 09:17:29 -07:00
2026-02-03 17:02:53 +09:00
2026-02-25 14:04:42 +01:00
2025-07-21 09:17:29 -07:00
2023-06-09 08:42:27 -07:00
2025-07-01 15:13:08 -07:00
2024-09-22 10:12:41 +01:00
2026-01-15 08:39:42 +00:00
2026-01-08 09:28:14 +09:00
2026-01-08 09:28:14 +09:00
2023-06-09 08:42:27 -07:00
2026-01-12 09:25:54 +00:00
2025-10-16 15:01:57 +00:00
2026-01-08 15:07:59 +01:00
2026-01-28 09:25:41 +00:00
2026-01-28 09:25:41 +00:00
2025-10-13 16:50:53 +01:00
2025-07-11 10:13:05 +01:00
2025-10-07 23:52:25 +00:00
2025-08-15 12:06:47 -07:00
2024-08-15 00:07:00 +08:00
2025-11-24 09:27:25 +08:00
2025-04-03 11:14:08 +01:00
2026-01-28 20:45:04 +09:00
2026-01-08 16:19:44 -08:00
2025-11-20 08:57:08 +00:00
2025-10-22 11:43:44 +01:00
2025-01-21 23:55:50 +07:00
2026-01-14 12:26:10 +00:00
2025-06-24 11:40:47 -07:00
2024-07-01 19:12:01 -07:00
2023-03-22 09:28:48 -07:00
2024-12-02 17:08:07 -08:00
2025-07-30 13:04:02 -07:00
2024-12-02 17:08:07 -08:00
2024-11-26 17:19:14 -08:00
2024-04-10 16:24:02 -07:00
2024-04-10 16:24:02 -07:00
2024-07-16 20:56:18 +01:00
2024-12-10 06:28:09 -08:00
2024-04-28 10:13:02 +08:00
2023-12-05 14:09:36 +01:00
2025-11-05 01:35:15 +00:00
2024-02-05 14:07:09 +01:00
2025-07-09 09:25:53 +09:00
2026-01-09 08:51:06 -08:00
2026-02-10 09:01:13 +00:00
2025-09-10 21:33:44 +00:00
2023-06-08 16:59:49 -07:00
2024-02-13 13:43:21 -08:00
2026-02-12 13:33:18 -08:00
2025-03-31 11:36:32 -07:00
2025-03-21 06:57:57 +00:00
2024-02-06 12:39:48 +00:00