| ; RUN: llc < %s -verify-machineinstrs |
| |
| ; Make sure we don't end up with a CBNZ of an undef v-/phys-reg. |
| |
| target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128" |
| target triple = "arm64-apple-ios" |
| |
| declare void @bar(i8*) |
| |
| define void @foo(i8* %m, i32 %off0) { |
| .thread1653: |
| br i1 undef, label %0, label %.thread1880 |
| |
| %1 = icmp eq i32 undef, 0 |
| %.not = xor i1 %1, true |
| %brmerge = or i1 %.not, undef |
| br i1 %brmerge, label %.thread1880, label %.thread1705 |
| |
| .thread1705: |
| ret void |
| |
| .thread1880: |
| %m1652.ph = phi i8* [ %m, %0 ], [ null, %.thread1653 ] |
| call void @bar(i8* %m1652.ph) |
| ret void |
| } |