blob: c4f871cb56e48bfe0dc3cb504e12a5e2f0242e68 [file] [log] [blame]
Juergen Ributzka31328162014-08-28 02:06:55 +00001; RUN: llc -mtriple=aarch64-apple-darwin -fast-isel -verify-machineinstrs < %s
Juergen Ributzka31328162014-08-28 02:06:55 +00002
3; Test that the Machine Instruction PHI node doesn't have more than one operand
4; from the same predecessor.
5define i32 @foo(i32 %a, i32 %b, i1 %c) {
6entry:
7 br i1 %c, label %switch, label %direct
8
9switch:
10 switch i32 %a, label %exit [
11 i32 43, label %continue
12 i32 45, label %continue
13 ]
14
15direct:
16 %var = add i32 %b, 1
17 br label %continue
18
19continue:
20 %var.phi = phi i32 [ %var, %direct ], [ 0, %switch ], [ 0, %switch ]
21 ret i32 %var.phi
22
23exit:
24 ret i32 1
25}