Matt Arsenault
e8e816344e
AMDGPU: Allow folding multiple uses of some immediates into copies
...
In some cases this will require an avoidable re-defining of
a register, but it works out better most of the time. Also allow
folding 64-bit immediates into subregister extracts, unless it would
break an inline constant.
We could be more aggressive here, but this set of conditions seems
to do a reasonable job without introducing too many regressions.
2025-08-22 20:34:20 +09:00
..
2025-08-12 15:03:31 +02:00
2025-05-16 10:31:03 +02:00
2025-06-05 15:28:04 +08:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-03-13 08:25:02 +07:00
2025-05-08 19:31:28 +02:00
2025-08-12 15:03:31 +02:00
2025-07-16 10:14:19 +02:00
2025-08-12 15:03:31 +02:00
2025-05-28 14:53:46 +08:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-03 07:48:08 -04:00
2025-07-03 07:48:08 -04:00
2025-08-22 05:29:36 +00:00
2025-08-22 05:29:36 +00:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-08-12 15:03:31 +02:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-05-20 21:25:31 -04:00
2025-03-12 20:45:02 +07:00
2025-07-30 13:01:23 +02:00
2025-07-29 13:04:04 +02:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-08-20 17:32:29 +02:00
2025-05-08 17:37:08 -04:00
2025-07-29 12:11:52 +08:00
2025-07-29 12:11:52 +08:00
2025-07-29 12:11:52 +08:00
2025-05-08 17:37:08 -04:00
2025-07-29 12:11:52 +08:00
2025-07-14 15:01:12 +01:00
2025-04-14 11:48:08 +02:00
2025-07-23 13:42:46 -04:00
2025-04-14 11:48:08 +02:00
2025-05-14 10:48:51 +02:00
2025-08-12 15:03:31 +02:00
2025-08-12 15:03:31 +02:00
2025-07-23 13:42:46 -04:00
2025-04-14 10:15:29 +02:00
2025-07-23 13:42:46 -04:00
2025-04-24 17:13:03 +02:00
2025-07-23 13:42:46 -04:00
2025-08-20 17:32:29 +02:00
2025-03-12 12:15:00 +01:00
2025-08-12 15:03:31 +02:00
2025-03-12 12:15:00 +01:00
2025-07-23 13:42:46 -04:00
2025-03-12 12:15:00 +01:00
2025-07-23 13:42:46 -04:00
2025-03-12 12:15:00 +01:00
2025-07-23 13:42:46 -04:00
2025-03-12 12:09:37 +01:00
2025-07-23 13:42:46 -04:00
2025-05-17 21:41:59 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-29 10:10:06 +08:00
2025-07-29 10:10:06 +08:00
2025-07-23 13:42:46 -04:00
2025-08-12 15:03:31 +02:00
2025-04-15 15:17:33 -07:00
2025-08-06 11:47:37 -07:00
2025-03-13 13:28:55 +07:00
2025-07-23 13:42:46 -04:00
2025-03-13 13:28:55 +07:00
2025-07-08 15:10:44 +08:00
2025-08-06 13:07:56 -07:00
2025-08-12 09:35:19 +02:00
2025-07-31 17:36:57 +08:00
2025-05-28 14:53:46 +08:00
2025-05-28 14:53:46 +08:00
2025-08-04 13:25:33 +02:00
2025-03-13 08:25:02 +07:00
2025-06-27 21:16:23 +09:00
2025-07-23 13:42:46 -04:00
2025-03-13 20:07:48 +07:00
2025-07-23 13:42:46 -04:00
2025-04-15 15:17:33 -07:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-06-18 13:04:24 +02:00
2025-05-08 17:37:08 -04:00
2025-08-12 09:35:19 +02:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-06-26 14:08:13 -07:00
2025-08-12 09:35:19 +02:00
2025-07-21 10:14:45 -07:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-07-21 10:14:45 -07:00
2025-03-13 12:03:17 -04:00
2025-08-12 09:35:19 +02:00
2025-07-17 16:10:59 -07:00
2025-08-12 09:35:19 +02:00
2025-06-26 14:08:13 -07:00
2025-05-08 17:37:08 -04:00
2025-06-26 14:08:13 -07:00
2025-06-26 14:08:13 -07:00
2025-06-26 14:08:13 -07:00
2025-06-27 21:16:23 +09:00
2025-07-17 16:10:59 -07:00
2025-08-12 09:35:19 +02:00
2025-05-08 17:37:08 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-03-13 08:25:02 +07:00
2025-07-30 13:01:23 +02:00
2025-03-13 20:07:48 +07:00
2025-07-23 13:42:46 -04:00
2025-04-24 17:13:03 +02:00
2025-07-30 13:01:23 +02:00
2025-07-30 13:01:23 +02:00
2025-07-30 13:01:23 +02:00
2025-07-30 13:01:23 +02:00
2025-07-30 13:01:23 +02:00
2025-07-30 13:01:23 +02:00
2025-04-24 17:13:03 +02:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-03-13 08:25:02 +07:00
2025-07-23 13:42:46 -04:00
2025-03-13 08:25:02 +07:00
2025-07-30 13:01:23 +02:00
2025-03-13 08:25:02 +07:00
2025-07-30 13:01:23 +02:00
2025-07-23 13:42:46 -04:00
2025-07-30 13:01:23 +02:00
2025-07-23 13:42:46 -04:00
2025-05-17 21:41:59 -04:00
2025-04-03 10:12:18 -05:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-03-13 08:25:02 +07:00
2025-07-30 13:01:23 +02:00
2025-03-13 08:25:02 +07:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-16 09:56:45 +02:00
2025-06-11 10:47:17 -07:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-08-05 16:25:23 -07:00
2025-05-08 17:37:08 -04:00
2025-06-27 21:16:23 +09:00
2025-06-27 21:16:23 +09:00
2025-07-30 13:01:23 +02:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-07-31 17:36:57 +08:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-07-29 12:11:52 +08:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-07-30 13:01:23 +02:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-06-27 21:16:23 +09:00
2025-07-23 13:42:46 -04:00
2025-03-13 08:25:02 +07:00
2025-03-13 08:25:02 +07:00
2025-03-13 08:25:02 +07:00
2025-03-13 08:25:02 +07:00
2025-07-30 13:01:23 +02:00
2025-07-30 13:01:23 +02:00
2025-07-30 13:01:23 +02:00
2025-07-30 13:01:23 +02:00
2025-07-30 13:01:23 +02:00
2025-07-30 13:01:23 +02:00
2025-05-08 17:37:08 -04:00
2025-07-22 00:42:23 -07:00
2025-07-22 00:42:23 -07:00
2025-07-22 00:42:23 -07:00
2025-07-22 00:42:23 -07:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-07 10:22:15 +02:00
2025-07-30 13:01:23 +02:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-07-21 10:23:26 +01:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-08-19 00:04:27 +09:00
2025-08-19 00:04:27 +09:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-08-04 17:06:34 -07:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-07-30 13:01:23 +02:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-05-08 17:37:08 -04:00
2025-07-23 13:42:46 -04:00
2025-08-12 15:03:31 +02:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-08-12 15:03:31 +02:00
2025-07-23 13:42:46 -04:00
2025-05-08 17:37:08 -04:00
2025-05-08 17:37:08 -04:00
2025-06-27 21:16:23 +09:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-08-12 15:03:31 +02:00
2025-08-22 20:34:20 +09:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-08-07 14:23:41 -07:00
2025-08-07 14:23:41 -07:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-08-07 14:23:41 -07:00
2025-08-07 14:23:41 -07:00
2025-08-07 14:23:41 -07:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-08-07 14:23:41 -07:00
2025-08-07 14:23:41 -07:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-08-07 14:23:41 -07:00
2025-08-07 14:23:41 -07:00
2025-07-23 13:42:46 -04:00
2025-08-07 14:23:41 -07:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-04-15 15:17:33 -07:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-08-12 15:03:31 +02:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-05-17 21:41:59 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 16:35:19 +02:00
2025-03-17 10:11:28 +01:00
2025-05-26 12:16:46 +02:00
2025-07-30 11:23:28 +05:30
2025-07-23 13:42:46 -04:00
2025-07-29 19:13:51 -07:00
2025-05-17 21:41:59 -04:00
2025-08-22 20:34:20 +09:00
2025-07-23 13:42:46 -04:00
2025-08-20 10:26:49 -04:00
2025-07-23 13:42:46 -04:00
2025-05-08 19:31:28 +02:00
2025-07-16 10:14:19 +02:00
2025-08-20 17:32:29 +02:00
2025-07-21 10:23:26 +01:00
2025-03-14 09:53:45 +07:00
2025-05-20 21:25:31 -04:00
2025-07-23 16:44:53 +02:00
2025-07-23 16:44:53 +02:00
2025-08-12 15:03:31 +02:00
2025-03-13 08:25:02 +07:00
2025-03-13 08:25:02 +07:00
2025-07-23 16:47:00 +02:00
2025-07-23 16:47:00 +02:00
2025-08-12 15:03:31 +02:00
2025-07-30 13:01:23 +02:00
2025-08-12 15:03:31 +02:00
2025-07-23 16:47:00 +02:00
2025-07-23 16:47:00 +02:00
2025-07-23 16:44:53 +02:00
2025-05-26 12:07:46 +02:00
2025-07-23 16:44:53 +02:00
2025-05-26 12:16:46 +02:00
2025-08-12 15:03:31 +02:00
2025-08-12 15:03:31 +02:00
2025-08-12 15:03:31 +02:00
2025-08-12 15:03:31 +02:00
2025-08-12 15:03:31 +02:00
2025-08-12 15:03:31 +02:00
2025-06-27 21:16:23 +09:00
2025-06-19 10:21:17 +02:00
2025-07-30 13:01:23 +02:00
2025-05-26 12:16:46 +02:00
2025-03-17 10:11:28 +01:00
2025-05-26 12:07:46 +02:00
2025-08-13 15:49:48 +02:00
2025-06-19 10:21:17 +02:00
2025-05-26 11:58:57 +02:00
2025-06-19 09:56:07 +02:00
2025-05-26 12:16:46 +02:00
2025-05-26 12:10:54 +02:00
2025-05-26 12:16:46 +02:00
2025-08-12 15:03:31 +02:00
2025-08-12 15:03:31 +02:00
2025-07-23 16:44:53 +02:00
2025-05-26 11:58:57 +02:00
2025-08-12 15:03:31 +02:00
2025-07-30 13:01:23 +02:00
2025-07-21 10:39:09 +02:00
2025-05-26 12:07:46 +02:00
2025-05-26 12:10:54 +02:00
2025-08-22 20:34:20 +09:00
2025-05-26 11:58:57 +02:00
2025-07-14 15:01:12 +01:00
2025-08-20 17:32:29 +02:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-05-07 14:07:16 +02:00
2025-05-26 12:16:46 +02:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-05-26 12:16:46 +02:00
2025-08-12 15:03:31 +02:00
2025-06-05 09:13:51 -07:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-17 14:43:58 +01:00
2025-08-22 20:34:20 +09:00
2025-08-22 20:34:20 +09:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-08-19 00:04:27 +09:00
2025-05-16 10:31:03 +02:00
2025-07-23 13:42:46 -04:00
2025-08-12 15:03:31 +02:00
2025-05-26 11:58:57 +02:00
2025-08-20 17:32:29 +02:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-06-27 21:16:23 +09:00
2025-06-27 21:16:23 +09:00
2025-07-02 13:46:36 +01:00
2025-08-20 17:32:29 +02:00
2025-08-12 15:03:31 +02:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-07-23 13:42:46 -04:00
2025-05-08 19:31:28 +02:00