1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py 2; RUN: opt -passes=gvn-sink -S < %s | FileCheck %s 3 4; This would assert/crash because the calls have different numbers of operands: 5; https://bugs.llvm.org/show_bug.cgi?id=42346 6 7%vec = type opaque 8%map = type { i32 } 9 10define void @PR42346() { 11; CHECK-LABEL: @PR42346( 12; CHECK-NEXT: entry: 13; CHECK-NEXT: [[CALL1:%.*]] = call ptr @bar(ptr undef, ptr undef) 14; CHECK-NEXT: br label [[EXIT:%.*]] 15; CHECK: if: 16; CHECK-NEXT: [[CALL2:%.*]] = call ptr @baz(ptr undef) 17; CHECK-NEXT: br label [[EXIT]] 18; CHECK: exit: 19; CHECK-NEXT: ret void 20; 21entry: 22 %call1 = call ptr @bar(ptr undef, ptr undef) 23 br label %exit 24 25if: 26 %call2 = call ptr @baz(ptr undef) 27 br label %exit 28 29exit: 30 ret void 31} 32 33declare ptr @bar(ptr, ptr) 34declare ptr @baz(ptr) 35