Philip Reames
9cf675923a
[RISCVRVVInitUndef] Remove implicit single use assumption for IMPLICIT_DEF
...
The code was written with the implicit assumption that each IMPLICIT_DEF either a) the tied operand, or b) an untied source, but not both. This is true right now, but an upcoming change may allow CSE of IMPLICIT_DEFs in some cases, so let's rewrite the code to handle that possibility.
I added an MIR case which demonstrates the multiple use IMPLICIT_DEF. To my knowledge, this is not a reachable configuration from IR right now.
As an aside, this makes the structure a much closer match with the sub-reg liveness case, and we can probably just merge these routines. (Future work.)
Differential Revision: https://reviews.llvm.org/D156477
2023-07-27 16:25:56 -07:00
..
2023-07-26 15:37:13 -07:00
2023-07-27 16:25:56 -07:00
2023-06-22 09:22:58 -07:00
2022-12-22 14:19:26 -08:00
2023-01-20 09:28:20 -08:00
2023-01-20 09:28:20 -08:00
2023-03-16 19:42:33 -07:00
2022-12-19 13:01:08 +01:00
2023-06-15 14:17:58 +02:00
2023-05-11 13:44:37 -07:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-04-07 08:59:28 +08:00
2023-07-24 16:52:04 +08:00
2022-11-25 08:39:44 -08:00
2022-12-19 13:01:08 +01:00
2023-03-30 20:47:28 +01:00
2023-03-30 20:47:28 +01:00
2023-03-30 20:47:28 +01:00
2023-02-09 12:00:05 -08:00
2023-06-22 15:42:17 +00:00
2023-07-25 09:03:45 -07:00
2023-07-25 09:03:45 -07:00
2023-07-25 09:04:49 -07:00
2023-07-14 18:21:08 +01:00
2023-06-23 17:23:12 -07:00
2023-03-16 19:42:33 -07:00
2023-04-07 08:59:28 +08:00
2022-12-19 13:01:08 +01:00
2022-12-21 14:19:49 +03:00
2023-02-28 14:43:40 +08:00
2022-12-11 20:55:05 -08:00
2022-12-19 13:01:08 +01:00
2023-06-06 17:39:05 -07:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-03-27 17:29:28 -07:00
2023-07-07 14:04:11 +08:00
2023-07-05 19:35:13 -07:00
2023-01-20 09:28:20 -08:00
2023-02-09 18:45:20 +03:00
2023-03-27 17:29:28 -07:00
2023-03-27 17:29:28 -07:00
2022-11-25 08:39:44 -08:00
2023-01-20 09:28:20 -08:00
2023-03-27 17:29:28 -07:00
2023-03-27 17:29:28 -07:00
2023-06-29 07:34:14 -07:00
2022-12-19 13:01:08 +01:00
2023-07-07 14:04:11 +08:00
2022-12-19 13:01:08 +01:00
2023-05-31 18:48:21 +01:00
2023-06-27 09:44:51 -07:00
2023-07-13 12:22:06 -07:00
2022-12-19 13:01:08 +01:00
2022-12-29 11:43:40 +00:00
2023-07-26 10:06:08 -07:00
2023-03-07 17:54:05 +08:00
2023-07-05 19:35:13 -07:00
2023-06-06 17:39:05 -07:00
2023-07-19 16:22:04 +02:00
2022-12-19 13:01:08 +01:00
2023-06-06 17:39:05 -07:00
2023-01-20 09:28:20 -08:00
2023-06-06 17:39:05 -07:00
2023-07-19 10:03:57 -07:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-07-20 10:16:56 -04:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-07-24 13:46:35 -07:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-05-25 14:13:37 +08:00
2023-06-17 10:10:20 +08:00
2023-05-25 14:13:37 +08:00
2023-03-31 12:19:02 -07:00
2023-02-23 01:26:27 +00:00
2022-12-19 13:01:08 +01:00
2023-06-20 12:26:27 -04:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-03-29 20:55:51 +01:00
2022-12-19 13:01:08 +01:00
2023-07-18 19:49:17 -07:00
2023-07-21 08:37:58 -07:00
2023-05-25 13:56:29 +05:30
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-07-20 10:16:56 -04:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-06-29 14:13:01 +08:00
2023-05-03 00:13:38 +08:00
2023-07-24 13:46:35 -07:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-05-03 00:13:38 +08:00
2023-06-17 10:10:20 +08:00
2023-02-03 22:42:08 -08:00
2023-03-31 12:19:02 -07:00
2022-12-19 15:22:39 +08:00
2022-12-19 13:01:08 +01:00
2023-07-14 15:30:54 -04:00
2023-06-22 15:42:17 +00:00
2023-06-30 16:41:49 +01:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-07-05 19:35:13 -07:00
2022-12-22 14:19:26 -08:00
2022-12-19 13:01:08 +01:00
2023-02-09 18:45:20 +03:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2022-11-09 16:10:32 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-07-23 22:40:10 -07:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-07-24 13:42:49 +08:00
2023-07-24 13:42:49 +08:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-07-24 13:42:49 +08:00
2023-05-12 18:31:35 +10:00
2023-07-24 13:46:35 -07:00
2023-05-12 18:31:35 +10:00
2023-06-26 13:50:36 -07:00
2023-06-26 13:50:36 -07:00
2023-05-12 18:31:35 +10:00
2023-06-17 10:10:20 +08:00
2023-03-14 13:11:11 -07:00
2023-03-31 12:19:02 -07:00
2023-07-24 13:42:49 +08:00
2023-01-09 16:46:28 +03:00
2022-12-06 10:31:17 -08:00
2022-12-06 10:31:17 -08:00
2023-05-12 15:06:58 +08:00
2023-03-01 15:33:45 +01:00
2022-12-19 13:01:08 +01:00
2023-06-12 09:52:35 -07:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-03-27 17:29:28 -07:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-07-10 13:25:17 -07:00
2023-05-26 18:39:41 +08:00
2023-05-31 20:31:24 -07:00
2022-12-19 13:01:08 +01:00
2023-07-11 11:20:24 +08:00
2023-05-31 20:31:24 -07:00
2023-07-11 11:20:24 +08:00
2022-12-19 13:01:08 +01:00
2023-04-13 10:52:28 +05:30
2023-06-23 22:57:56 +00:00
2023-06-23 22:57:56 +00:00
2023-06-30 09:13:19 -07:00
2023-06-23 22:57:56 +00:00
2023-05-12 15:06:58 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-07-24 13:42:49 +08:00
2023-05-17 17:03:15 +02:00
2023-07-06 13:36:03 +01:00
2023-03-21 18:52:05 -07:00
2022-12-19 13:01:08 +01:00
2023-01-24 11:42:37 -08:00
2022-12-19 13:01:08 +01:00
2022-11-17 13:24:04 +03:00
2023-07-24 13:42:49 +08:00
2023-03-27 17:29:28 -07:00
2023-07-12 08:03:45 -07:00
2023-03-27 17:29:28 -07:00
2023-03-14 17:55:11 +00:00
2023-03-16 19:42:33 -07:00
2022-12-19 13:01:08 +01:00
2023-04-10 10:57:29 +08:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-03-21 18:52:05 -07:00
2023-03-21 18:52:05 -07:00
2023-07-24 12:25:09 -07:00
2023-07-24 12:25:09 -07:00
2023-07-24 10:58:57 +01:00
2023-06-26 10:45:41 -07:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-06-13 09:14:37 +00:00
2022-12-19 13:01:08 +01:00
2022-11-25 08:39:44 -08:00
2023-01-20 09:28:20 -08:00
2022-11-09 16:10:32 +08:00
2023-05-10 14:25:11 -04:00
2023-04-24 20:15:14 -07:00
2023-04-24 20:15:14 -07:00
2023-06-23 22:57:56 +00:00
2023-07-07 14:04:11 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2022-12-28 19:59:42 -08:00
2023-07-24 13:42:49 +08:00
2022-12-19 13:01:08 +01:00
2023-04-01 18:54:03 -07:00
2023-04-18 15:01:36 -07:00
2022-12-19 13:01:08 +01:00
2023-05-03 09:28:07 +01:00
2023-06-06 17:39:05 -07:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-06-13 09:14:37 +00:00
2023-06-18 23:40:47 +08:00
2023-07-12 08:03:35 -07:00
2023-07-16 20:32:46 -07:00
2023-07-07 14:04:11 +08:00
2023-07-19 10:03:57 -07:00
2022-12-22 14:19:26 -08:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2023-04-12 21:06:22 +00:00
2022-11-25 08:39:44 -08:00
2023-07-21 14:52:57 +01:00
2023-03-01 19:42:56 +00:00
2023-02-08 07:54:52 +01:00
2023-02-17 21:46:26 +01:00
2023-02-13 16:28:26 +01:00
2023-04-15 17:29:06 +08:00
2022-12-29 15:10:36 -08:00
2023-06-26 10:45:41 -07:00
2022-11-30 10:28:57 -08:00
2022-12-29 17:04:52 -08:00
2023-06-13 10:39:43 -07:00
2023-06-13 10:39:43 -07:00
2023-06-13 10:39:43 -07:00
2023-06-13 10:39:43 -07:00
2023-07-17 08:58:29 -07:00
2023-06-13 10:39:43 -07:00
2023-07-17 08:58:29 -07:00
2023-07-17 08:58:29 -07:00
2022-12-19 13:01:08 +01:00
2023-05-03 00:13:38 +08:00
2022-11-25 08:39:44 -08:00
2023-03-16 19:42:33 -07:00
2022-12-22 14:19:26 -08:00
2023-03-21 18:52:05 -07:00
2023-03-16 19:42:33 -07:00
2023-03-16 19:42:33 -07:00
2023-02-08 07:54:52 +01:00
2023-06-06 17:39:05 -07:00
2023-02-13 16:28:26 +01:00
2023-04-15 17:29:06 +08:00
2022-12-22 14:19:26 -08:00
2023-06-06 17:39:05 -07:00
2023-07-18 10:39:25 -07:00
2023-07-18 10:39:25 -07:00
2023-07-06 17:24:53 -07:00
2023-06-06 13:30:33 -07:00
2022-12-19 13:01:08 +01:00
2023-07-20 10:16:56 -04:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-07-20 10:16:56 -04:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-07-17 08:58:29 -07:00
2023-07-17 08:58:29 -07:00
2023-07-17 08:58:29 -07:00
2023-06-13 10:39:43 -07:00
2023-07-17 08:58:29 -07:00
2023-07-17 08:58:29 -07:00
2023-07-17 08:58:29 -07:00
2023-03-23 12:32:25 +00:00
2023-03-16 19:42:33 -07:00
2023-03-07 17:54:05 +08:00
2023-04-12 21:06:22 +00:00
2023-05-31 20:31:24 -07:00
2023-02-07 17:13:21 -08:00
2023-02-07 17:13:21 -08:00
2023-02-07 17:13:21 -08:00
2023-02-07 17:13:21 -08:00
2023-03-30 21:05:22 +01:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2022-12-28 15:17:41 -08:00
2023-03-27 17:29:28 -07:00
2023-07-18 10:18:02 -07:00
2022-12-19 14:17:26 -08:00
2022-12-01 11:09:38 -08:00
2023-03-24 09:45:43 +08:00
2023-07-17 08:58:29 -07:00
2023-04-26 15:58:09 +00:00
2023-04-07 08:59:28 +08:00
2022-10-22 14:30:13 -07:00
2023-04-07 08:59:28 +08:00
2023-04-07 08:59:28 +08:00
2022-12-19 13:01:08 +01:00
2022-12-22 14:19:26 -08:00
2022-12-23 21:39:22 -08:00
2023-05-11 11:33:18 -07:00
2022-12-19 13:01:08 +01:00
2022-12-06 11:34:48 -05:00
2023-05-10 22:53:24 +08:00
2022-12-19 13:01:08 +01:00
2023-07-19 10:03:57 -07:00
2023-05-16 16:07:23 -07:00
2022-12-19 13:01:08 +01:00
2023-01-31 12:47:48 +00:00
2023-06-06 17:39:05 -07:00
2023-06-06 17:39:05 -07:00
2023-03-16 19:42:33 -07:00
2023-07-11 10:21:42 -07:00
2023-03-16 19:42:33 -07:00
2023-03-16 19:42:33 -07:00
2023-03-07 17:54:05 +08:00
2023-02-06 16:42:59 -08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-03-10 10:14:59 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-03-27 17:29:28 -07:00
2022-12-19 13:01:08 +01:00
2023-02-03 09:38:46 +08:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2022-12-19 13:01:08 +01:00
2023-03-16 19:42:33 -07:00
2023-01-20 09:28:20 -08:00
2023-01-20 09:28:20 -08:00
2023-07-24 10:58:57 +01:00
2022-12-01 11:09:38 -08:00
2022-12-19 13:01:08 +01:00
2023-03-16 19:42:33 -07:00
2023-05-10 11:51:51 -07:00
2023-03-16 19:42:33 -07:00
2023-03-16 19:42:33 -07:00
2023-01-20 09:28:20 -08:00
2023-03-27 17:29:28 -07:00
2023-05-26 10:48:49 -07:00
2022-12-19 13:01:08 +01:00
2023-07-24 13:42:49 +08:00
2023-07-24 13:42:49 +08:00
2023-07-26 10:06:08 -07:00
2023-03-27 17:29:28 -07:00
2023-02-17 19:45:22 +01:00
2023-02-24 00:17:58 +01:00
2023-02-22 19:57:37 +01:00
2023-07-17 17:13:47 -07:00
2023-05-30 14:49:33 +08:00
2022-12-19 13:01:08 +01:00
2023-07-24 10:37:58 +08:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00
2023-05-12 18:31:35 +10:00