HomePhabricator

[LICM] Make LICM able to hoist phis

Description

[LICM] Make LICM able to hoist phis

The general approach taken is to make note of loop invariant branches, then when
we see something conditional on that branch, such as a phi, we create a copy of
the branch and (empty versions of) its successors and hoist using that.

This has no impact by itself that I've been able to see, as LICM typically
doesn't see such phis as they will have been converted into selects by the time
LICM is run, but once we start doing phi-to-select conversion later it will be
important.

Differential Revision: https://reviews.llvm.org/D52827

Details

Committed
john.brawnNov 19 2018, 3:31 AM
Differential Revision
D52827: [LICM] Make LICM able to hoist phis
Parents
rL347189: [OpenCL] Fix address space deduction in template args.
Branches
Unknown
Tags
Unknown