1; Ensure that llvm-reduce doesn't try to remove the first BB of a 2; function when the second BB has multiple predecessors, since that 3; results in invalid IR. This issue was fixed by: 4; https://reviews.llvm.org/D131026 5 6; RUN: llvm-reduce --delta-passes=basic-blocks --test %python --test-arg %p/Inputs/remove-bbs.py -abort-on-invalid-reduction %s -o %t 7 8define void @f(ptr %x0) { 9uninteresting: 10 %x2 = alloca ptr, i32 0, align 8 11 %x3 = alloca ptr, i32 0, align 8 12 br label %interesting1 13 14; this block has 2 predecessors and can't become the entry block 15interesting1: 16 %x5 = icmp ne ptr %x0, null 17 br i1 %x5, label %interesting2, label %interesting1 18 19interesting2: 20 store ptr null, ptr null, align 8 21 br label %interesting3 22 23interesting3: 24 ret void 25} 26