diff options
| author | Jean-Luc Duprat <jduprat@apple.com> | 2013-05-06 16:55:50 +0000 |
|---|---|---|
| committer | Jean-Luc Duprat <jduprat@apple.com> | 2013-05-06 16:55:50 +0000 |
| commit | 3e4fc3ef24387b8c19a877a96619b3351924d3ba (patch) | |
| tree | ab2aebb9332983306ce0ce7e57876584d72dcf61 /libcxx/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_F.pass.cpp | |
| parent | 7dbbc28f7252a544f21e62241ffcda71254bf37d (diff) | |
| download | bcm5719-llvm-3e4fc3ef24387b8c19a877a96619b3351924d3ba.tar.gz bcm5719-llvm-3e4fc3ef24387b8c19a877a96619b3351924d3ba.zip | |
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
llvm-svn: 181216
Diffstat (limited to 'libcxx/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_F.pass.cpp')
0 files changed, 0 insertions, 0 deletions

