Sometimes during clone function, we may not be able to simplify during
the first phase of cloning: CloneBlock. This is because the instruction
may not be tied to any basic block yet (as the case when cloning is
called during inlining).
This patch adds all instructions from the cloned function into the
second pass of simplification, which is done after the instructions are
tied to basic block. We reuse the second pass which was previously handling phi
nodes and their uses.
The benefit of this patch is to simplify the instructions that are
inlined from the callee to the caller, so that later passes after
inlining have fewer instructions to churn on (see test case for example).