Florian Hahn
86d113a8b8
[SCEVExpand] Do not create redundant 'or false' for pred expansion.
...
This patch updates SCEVExpander::expandUnionPredicate to not create
redundant 'or false, x' instructions. While those are trivially
foldable, they can be easily avoided and hinder code that checks the
size/cost of the generated checks before further folds.
I am planning on look into a few other similar improvements to code
generated by SCEVExpander.
I remember a while ago @lebedev.ri working on doing some trivial folds
like that in IRBuilder itself, but there where concerns that such
changes may subtly break existing code.
Reviewed By: reames, lebedev.ri
Differential Revision: https://reviews.llvm.org/D116696
2022-01-06 11:52:19 +00:00
..
2022-01-05 10:46:06 +00:00
2021-06-07 12:13:21 +01:00
2022-01-06 11:52:19 +00:00
2022-01-06 11:52:19 +00:00
2021-12-23 08:37:24 -06:00
2021-12-13 16:56:22 -08:00
2022-01-06 11:52:19 +00:00
2021-08-06 10:13:15 +01:00
2021-12-13 16:56:22 -08:00
2021-11-28 09:49:28 +00:00
2021-06-07 10:47:52 +01:00
2021-06-07 10:47:52 +01:00
2021-05-24 19:43:40 +02:00
2021-05-24 19:43:40 +02:00
2021-05-24 19:43:40 +02:00
2022-01-05 10:46:06 +00:00
2021-06-07 10:47:52 +01:00
2021-06-07 10:47:52 +01:00
2021-04-28 17:27:52 -04:00
2021-12-13 16:56:22 -08:00
2021-06-07 10:47:52 +01:00
2022-01-06 11:52:19 +00:00
2022-01-05 10:46:06 +00:00
2022-01-05 10:46:06 +00:00
2021-12-13 16:56:22 -08:00
2021-10-27 22:21:37 +03:00
2021-11-24 16:20:35 +00:00
2021-10-18 16:48:10 -07:00
2022-01-05 10:46:06 +00:00
2021-06-07 10:47:52 +01:00
2021-12-20 15:10:41 +00:00
2021-10-27 22:21:37 +03:00
2021-05-24 19:43:40 +02:00
2021-11-24 13:32:24 +00:00
2021-10-27 22:21:37 +03:00
2022-01-06 11:52:19 +00:00
2021-08-08 10:32:02 +03:00
2021-12-13 16:56:22 -08:00
2021-12-13 16:56:22 -08:00
2021-06-17 09:38:28 +02:00
2021-12-13 16:56:22 -08:00
2021-12-13 16:56:22 -08:00
2021-03-17 17:03:47 +01:00
2021-08-05 14:39:08 +01:00
2021-10-05 18:41:24 -07:00
2021-07-15 08:53:51 -07:00
2021-12-13 16:56:22 -08:00
2021-12-20 16:23:29 +00:00
2021-09-15 10:45:50 +01:00
2021-05-24 19:43:40 +02:00
2021-10-18 18:03:09 +01:00
2021-10-18 18:03:09 +01:00
2021-04-29 08:34:24 +01:00
2021-08-16 20:40:55 +02:00
2021-09-10 15:18:23 +02:00
2021-06-07 10:47:52 +01:00
2021-11-08 09:41:13 +00:00
2022-01-06 11:52:19 +00:00
2021-06-07 10:47:52 +01:00
2021-06-07 10:47:52 +01:00
2022-01-05 10:46:06 +00:00
2021-06-07 10:47:52 +01:00
2022-01-05 10:46:06 +00:00
2021-09-18 20:51:00 +02:00
2022-01-06 11:52:19 +00:00
2021-04-09 10:01:57 +01:00
2021-06-07 10:47:52 +01:00
2021-06-07 14:47:36 -07:00
2021-06-07 10:47:52 +01:00
2021-11-10 11:21:19 +00:00
2022-01-06 11:52:19 +00:00
2021-10-27 22:21:37 +03:00
2022-01-02 12:48:17 +00:00
2021-11-10 11:21:19 +00:00
2021-10-18 18:03:09 +01:00
2022-01-05 10:46:06 +00:00
2021-06-07 10:47:52 +01:00
2021-12-13 16:56:22 -08:00
2021-12-13 16:56:22 -08:00
2021-12-13 16:56:22 -08:00
2022-01-05 10:46:06 +00:00
2021-06-28 11:10:38 +01:00
2021-11-15 13:12:57 +00:00
2021-05-11 14:32:34 +01:00
2021-07-15 08:53:51 -07:00
2021-05-24 19:43:40 +02:00
2022-01-06 11:52:19 +00:00
2021-05-24 19:43:40 +02:00
2022-01-06 11:52:19 +00:00
2021-06-07 10:47:52 +01:00
2021-08-06 10:13:15 +01:00
2021-08-10 08:27:43 +01:00
2021-12-13 16:56:22 -08:00
2021-08-06 10:13:15 +01:00
2021-06-07 10:47:52 +01:00
2021-08-06 10:13:15 +01:00
2021-11-10 09:42:58 +00:00
2021-07-07 15:30:10 +01:00
2021-08-15 12:15:52 +01:00
2021-10-27 22:21:37 +03:00
2021-04-28 13:41:07 +01:00
2021-11-18 14:08:57 +00:00
2021-05-24 19:43:40 +02:00
2021-10-27 22:21:37 +03:00
2021-10-11 09:41:38 +01:00
2022-01-05 10:46:06 +00:00
2021-11-22 10:57:29 +00:00
2021-11-10 11:21:19 +00:00
2021-10-27 22:21:37 +03:00
2021-07-30 18:04:09 +01:00
2021-06-07 10:47:52 +01:00
2021-10-27 22:21:37 +03:00
2021-06-07 10:47:52 +01:00
2021-10-27 22:21:37 +03:00
2021-12-13 16:56:22 -08:00
2021-06-07 10:47:52 +01:00
2021-09-14 11:19:12 +01:00
2022-01-05 10:46:06 +00:00
2022-01-05 10:46:06 +00:00
2022-01-05 10:46:06 +00:00
2022-01-05 10:46:06 +00:00
2022-01-05 10:46:06 +00:00
2022-01-05 10:46:06 +00:00
2021-03-10 20:59:53 +00:00