Stefan Pintilie
8d69e953b5
[RISCV] Add combine for shadd family of instructions. ( #130829 )
...
For example for the following situation:
%6:gpr = SLLI %2:gpr, 2
%7:gpr = ADDI killed %6:gpr, 24
%8:gpr = ADD %0:gpr, %7:gpr
If we swap the two add instrucions we can merge the shift and add. The
final code will look something like this:
%7 = SH2ADD %0, %2
%8 = ADDI %7, 24
2025-03-31 10:02:12 -04:00
..
2025-03-28 19:23:56 +00:00
2025-03-31 09:13:46 +01:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:23:56 +00:00
2025-03-28 19:23:56 +00:00
2025-01-07 13:33:22 -03:00
2025-01-06 19:23:21 +08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2024-11-06 00:20:21 +03:00
2024-11-25 18:59:31 -08:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:23:56 +00:00
2024-11-15 17:53:14 +08:00
2025-02-13 09:57:33 -08:00
2024-12-12 07:58:36 +01:00
2024-11-15 17:53:14 +08:00
2025-03-28 19:23:56 +00:00
2025-03-28 19:23:56 +00:00
2024-12-17 00:19:45 -08:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:23:56 +00:00
2025-03-28 19:23:56 +00:00
2025-03-28 19:23:56 +00:00
2025-03-28 19:23:56 +00:00
2025-03-28 19:47:29 -07:00
2024-11-15 17:53:14 +08:00
2025-03-28 19:23:56 +00:00
2024-11-15 17:53:14 +08:00
2025-03-28 19:23:56 +00:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2025-03-27 19:31:38 -03:00
2025-03-07 09:23:50 +08:00
2024-11-15 17:53:14 +08:00
2025-02-13 09:57:33 -08:00
2024-09-03 16:04:51 -07:00
2024-09-03 16:04:51 -07:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2025-02-13 09:57:33 -08:00
2025-03-27 19:31:38 -03:00
2025-02-13 09:57:33 -08:00
2024-11-12 09:35:16 -08:00
2024-11-12 09:35:16 -08:00
2024-11-15 17:53:14 +08:00
2025-03-06 13:02:17 +08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:23:56 +00:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:23:56 +00:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:23:56 +00:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:23:56 +00:00
2024-10-11 20:25:53 +01:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2025-02-13 09:57:33 -08:00
2024-11-26 23:39:45 +08:00
2024-11-15 17:53:14 +08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2024-11-28 15:01:49 +08:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:23:56 +00:00
2025-03-28 19:23:56 +00:00
2024-11-15 17:53:14 +08:00
2025-01-28 21:03:12 +05:30
2025-03-28 19:23:56 +00:00
2024-11-15 17:53:14 +08:00
2025-03-28 19:23:56 +00:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2025-03-27 19:31:38 -03:00
2025-02-13 09:57:33 -08:00
2024-10-11 20:25:53 +01:00
2025-03-28 19:23:56 +00:00
2025-02-13 09:57:33 -08:00
2025-03-27 07:45:42 -07:00
2024-11-27 10:24:34 -08:00
2025-03-06 13:01:58 +08:00
2025-03-17 16:39:51 +08:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2025-02-13 09:57:33 -08:00
2024-11-06 00:20:21 +03:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2024-12-04 13:52:20 -08:00
2025-03-30 22:03:14 -07:00
2025-03-28 07:06:17 -07:00
2024-11-06 00:20:21 +03:00
2024-11-06 00:20:21 +03:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2024-10-11 20:25:53 +01:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:47:29 -07:00
2024-12-06 14:07:27 -05:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2025-03-27 19:31:38 -03:00
2025-03-28 19:23:56 +00:00
2025-02-13 09:57:33 -08:00
2024-10-01 22:09:27 -07:00
2024-10-01 22:09:27 -07:00
2024-11-27 10:24:34 -08:00
2025-03-06 13:01:58 +08:00
2024-11-09 10:02:06 +00:00
2024-11-15 17:53:14 +08:00
2024-11-06 00:20:21 +03:00
2025-02-13 09:57:33 -08:00
2024-12-04 13:52:20 -08:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2025-03-28 19:23:56 +00:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2024-11-06 00:20:21 +03:00
2024-10-11 20:25:53 +01:00
2025-03-27 07:45:42 -07:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2024-12-11 16:06:49 +00:00
2024-12-11 16:06:49 +00:00
2024-12-11 16:06:49 +00:00
2024-12-11 16:06:49 +00:00
2024-12-11 16:06:49 +00:00
2025-03-17 12:51:39 +08:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2025-03-27 19:31:38 -03:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:23:56 +00:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2024-09-26 22:56:12 -07:00
2025-03-06 13:01:58 +08:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2024-11-06 00:20:21 +03:00
2025-02-13 09:57:33 -08:00
2024-09-03 16:04:51 -07:00
2024-12-04 13:52:20 -08:00
2024-10-11 20:25:53 +01:00
2024-11-06 00:20:21 +03:00
2025-02-13 09:57:33 -08:00
2025-03-25 07:59:44 -07:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2024-10-18 10:40:38 +01:00
2024-08-26 13:30:23 +03:00
2024-11-06 00:20:21 +03:00
2024-12-06 00:48:05 +08:00
2024-09-30 23:52:35 -07:00
2024-10-18 18:17:23 -07:00
2024-11-06 00:20:21 +03:00
2024-10-18 10:40:38 +01:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2024-10-02 13:37:25 -07:00
2024-11-15 17:53:14 +08:00
2025-03-26 18:25:59 -07:00
2025-03-28 19:23:56 +00:00
2025-02-04 10:02:42 -03:00
2025-01-31 14:05:34 -08:00
2025-01-31 14:05:34 -08:00
2025-01-08 16:19:31 -08:00
2025-01-28 21:03:12 +05:30
2024-11-15 17:53:14 +08:00
2024-11-06 00:20:21 +03:00
2025-02-13 09:57:33 -08:00
2025-01-28 21:03:12 +05:30
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-03-07 09:21:36 +01:00
2024-11-06 00:20:21 +03:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2025-03-04 11:36:16 -08:00
2024-11-15 17:53:14 +08:00
2025-03-28 19:23:56 +00:00
2025-03-10 13:22:59 +00:00
2025-02-21 12:53:13 +05:30
2024-11-26 23:39:45 +08:00
2024-11-26 23:39:45 +08:00
2024-11-26 23:39:45 +08:00
2024-11-26 23:39:45 +08:00
2024-11-26 23:39:45 +08:00
2024-12-19 13:00:08 +08:00
2025-03-28 19:23:56 +00:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2024-09-11 09:53:11 -07:00
2024-11-26 23:39:45 +08:00
2024-11-26 23:39:45 +08:00
2025-03-03 15:49:37 +05:30
2025-02-13 09:57:33 -08:00
2024-09-26 22:56:12 -07:00
2024-09-16 12:51:07 -07:00
2024-10-01 22:09:27 -07:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-01-13 12:06:26 +08:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:23:56 +00:00
2025-02-13 09:57:33 -08:00
2024-10-11 20:25:53 +01:00
2024-11-15 17:53:14 +08:00
2025-02-12 18:54:39 +05:30
2024-11-06 00:20:21 +03:00
2025-02-13 09:57:33 -08:00
2024-10-18 09:35:42 +04:00
2025-02-13 09:57:33 -08:00
2024-11-06 00:20:21 +03:00
2025-03-14 13:11:45 +01:00
2025-03-27 19:31:38 -03:00
2025-01-31 15:19:44 -08:00
2025-03-26 11:14:16 -07:00
2025-02-25 10:04:57 -08:00
2025-02-13 09:57:33 -08:00
2024-10-04 12:22:11 +03:00
2025-03-28 19:23:56 +00:00
2025-03-30 22:03:14 -07:00
2025-02-08 16:25:27 -08:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2024-11-06 00:20:21 +03:00
2024-11-06 00:20:21 +03:00
2025-02-13 09:57:33 -08:00
2024-11-06 00:20:21 +03:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:23:56 +00:00
2024-11-15 17:53:14 +08:00
2025-03-26 18:25:59 -07:00
2024-12-19 21:38:20 +01:00
2024-11-06 00:20:21 +03:00
2024-11-15 17:53:14 +08:00
2024-10-31 16:40:29 +00:00
2024-09-27 13:48:01 -07:00
2024-11-06 00:20:21 +03:00
2025-03-19 11:09:49 -07:00
2025-03-04 11:36:16 -08:00
2025-03-06 13:31:08 -08:00
2025-03-11 08:54:22 -07:00
2025-02-04 10:04:19 -05:00
2025-03-31 10:02:12 -04:00
2024-10-01 13:45:30 +01:00
2025-03-18 08:25:49 -07:00
2025-03-28 07:06:17 -07:00
2025-03-28 19:23:56 +00:00
2024-08-27 10:08:43 +08:00
2024-11-26 12:25:54 +03:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-03-07 10:52:04 +08:00
2024-12-26 21:50:35 -08:00
2024-11-15 17:53:14 +08:00
2024-11-14 13:47:49 -08:00
2025-03-19 06:06:13 +01:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:23:56 +00:00
2025-02-13 09:57:33 -08:00
2024-11-06 11:36:30 -08:00
2025-02-13 09:57:33 -08:00
2024-12-02 09:06:08 -08:00
2024-12-02 09:06:08 -08:00
2024-12-02 09:06:08 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2024-11-06 00:20:21 +03:00
2024-12-11 17:41:19 +08:00
2024-11-06 00:20:21 +03:00
2024-11-06 00:20:21 +03:00
2025-02-13 09:57:33 -08:00
2024-11-05 21:48:38 -08:00
2024-11-05 21:12:09 -08:00
2024-11-05 21:48:38 -08:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2024-11-25 18:59:31 -08:00
2024-12-29 12:39:37 -08:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2025-03-19 06:06:13 +01:00
2024-11-15 17:53:14 +08:00
2025-03-28 19:23:56 +00:00
2024-10-04 16:03:09 +08:00
2024-09-03 13:33:14 -07:00
2024-09-03 13:33:14 -07:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2025-02-13 09:57:33 -08:00
2024-08-23 14:06:12 +01:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2025-02-13 09:57:33 -08:00
2025-02-25 10:04:57 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-25 10:04:57 -08:00
2024-11-15 17:53:14 +08:00
2025-03-28 19:23:56 +00:00
2025-03-10 13:22:59 +00:00
2024-11-08 00:16:45 +08:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2025-01-31 14:05:34 -08:00
2024-11-27 11:14:51 -08:00
2024-12-12 11:24:07 +08:00
2024-11-15 17:53:14 +08:00
2025-03-28 19:23:56 +00:00
2025-02-19 12:11:00 -08:00
2025-03-28 19:23:56 +00:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2025-03-26 18:25:59 -07:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2024-12-10 12:37:45 -08:00
2025-01-16 11:58:42 -08:00
2024-10-02 16:33:31 -07:00
2024-10-02 16:33:31 -07:00
2025-01-28 21:03:12 +05:30
2024-11-06 00:20:21 +03:00
2024-11-06 00:20:21 +03:00
2024-11-06 00:20:21 +03:00
2025-03-06 09:28:44 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2025-03-28 19:23:56 +00:00
2025-03-28 19:23:56 +00:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2025-02-13 09:57:33 -08:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2024-11-15 17:53:14 +08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-03-28 19:23:56 +00:00
2024-11-15 17:53:14 +08:00
2025-02-13 09:57:33 -08:00
2024-11-06 19:30:32 +03:00
2024-12-04 13:40:02 +08:00
2024-11-06 00:20:21 +03:00
2024-08-28 12:48:20 +01:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2024-10-01 11:22:02 +10:00
2024-11-06 00:20:21 +03:00
2024-12-31 10:56:28 +08:00
2025-03-05 10:59:45 -08:00
2025-03-05 10:59:45 -08:00
2025-03-05 10:59:45 -08:00
2025-03-05 10:59:45 -08:00
2025-03-05 10:59:45 -08:00
2025-03-05 10:59:45 -08:00
2025-03-05 10:59:45 -08:00
2024-12-10 17:57:04 -08:00
2024-11-15 17:53:14 +08:00
2025-02-19 12:11:00 -08:00
2025-02-13 09:57:33 -08:00
2024-11-06 00:20:21 +03:00
2025-03-28 19:23:56 +00:00
2025-03-28 19:23:56 +00:00
2025-02-06 19:45:47 -08:00
2025-03-05 10:59:45 -08:00
2025-01-28 21:03:12 +05:30
2024-11-06 00:20:21 +03:00
2025-02-06 19:45:47 -08:00
2025-02-13 09:57:33 -08:00
2025-02-13 09:57:33 -08:00
2024-11-06 00:20:21 +03:00
2025-01-27 22:10:51 -08:00
2024-11-25 16:12:45 -08:00
2024-11-25 16:12:45 -08:00
2024-09-01 12:15:00 -07:00