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