Jean-Luc Duprat
c5cf6e5365
Provide InstCombines for the following 3 cases:
...
A * (1 - (uitofp i1 C)) -> select C, 0, A
B * (uitofp i1 C) -> select C, B, 0
select C, 0, A + select C, B, 0 -> select C, B, A
These come up in code that has been hand-optimized from a select to a linear blend,
on platforms where that may have mattered. We want to undo such changes
with the following transform:
A*(1 - uitofp i1 C) + B*(uitofp i1 C) -> select C, A, B
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181216 91177308-0d34-0410-b5e6-96231b3b80d8
2013-05-06 16:55:50 +00:00
..
2013-01-09 10:39:16 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 00:45:19 +00:00
2013-03-18 23:33:44 +00:00
2013-03-27 16:43:11 +00:00
2013-05-01 21:01:06 +00:00
2013-03-28 15:47:50 +00:00
2013-05-01 22:58:00 +00:00
2013-04-03 18:31:38 +00:00
2013-03-06 19:04:56 +00:00
2013-03-22 03:10:51 +00:00
2013-04-23 08:28:39 +00:00
2013-01-02 11:36:10 +00:00
2013-01-10 00:45:19 +00:00
2013-02-13 22:45:52 +00:00
2013-02-05 23:26:02 +00:00
2013-01-02 11:36:10 +00:00
2013-01-10 00:45:19 +00:00
2013-03-18 23:04:30 +00:00
2013-01-25 07:45:25 +00:00
2013-04-10 21:45:07 +00:00
2013-01-10 00:45:19 +00:00
2013-05-03 11:11:15 +00:00
2013-04-15 14:44:24 +00:00
2013-01-10 00:45:19 +00:00
2013-03-27 18:27:54 +00:00
2013-02-28 01:44:26 +00:00
2013-03-25 13:13:33 +00:00
2013-03-14 00:20:10 +00:00
2013-04-01 23:00:01 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 00:45:19 +00:00
2013-01-25 07:45:25 +00:00
2013-04-15 20:13:59 +00:00
2013-01-10 00:45:19 +00:00
2013-01-02 11:36:10 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 02:01:35 +00:00
2013-02-27 18:25:41 +00:00
2013-01-10 00:45:19 +00:00
2013-05-01 20:59:00 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 00:45:19 +00:00
2013-01-02 11:36:10 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 00:45:19 +00:00
2013-05-06 16:55:50 +00:00
2013-01-10 00:45:19 +00:00
2013-04-11 14:06:34 +00:00
2013-02-18 23:11:17 +00:00
2013-01-04 22:35:45 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 05:23:59 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 00:45:19 +00:00
2013-05-05 00:40:33 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 00:45:19 +00:00
2013-01-02 11:36:10 +00:00
2012-12-20 14:43:30 +00:00
2013-01-10 00:45:19 +00:00
2013-01-10 00:45:19 +00:00
2013-02-26 18:05:31 +00:00
2013-02-19 11:35:39 +00:00
2013-01-10 00:45:19 +00:00
2013-03-27 16:43:11 +00:00
2013-03-27 16:43:11 +00:00
2013-03-26 01:27:52 +00:00
2013-04-03 18:31:38 +00:00
2013-01-10 00:45:19 +00:00
2013-01-13 16:01:15 +00:00