diff options
Diffstat (limited to 'llvm/test/Transforms/LICM/sink_phi_node_use.ll')
-rw-r--r-- | llvm/test/Transforms/LICM/sink_phi_node_use.ll | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/llvm/test/Transforms/LICM/sink_phi_node_use.ll b/llvm/test/Transforms/LICM/sink_phi_node_use.ll new file mode 100644 index 00000000000..d50f54e47f0 --- /dev/null +++ b/llvm/test/Transforms/LICM/sink_phi_node_use.ll @@ -0,0 +1,28 @@ +; RUN: llvm-upgrade < %s | llvm-as | opt -licm | llvm-dis | %prcontext add 1 | grep preheader.loopexit: + +implementation + +void %test() { +loopentry.2.i: + br bool false, label %no_exit.1.i.preheader, label %loopentry.3.i.preheader + +no_exit.1.i.preheader: + br label %no_exit.1.i + +no_exit.1.i: + br bool false, label %return.i, label %endif.8.i + +endif.8.i: + %inc.1.i = add int 0, 1 + br bool false, label %no_exit.1.i, label %loopentry.3.i.preheader.loopexit + +loopentry.3.i.preheader.loopexit: + br label %loopentry.3.i.preheader + +loopentry.3.i.preheader: + %arg_num.0.i.ph13000 = phi int [ 0, %loopentry.2.i ], [ %inc.1.i, %loopentry.3.i.preheader.loopexit ] + ret void + +return.i: + ret void +} |