1; RUN: llc -mtriple nvptx64-nvidia-cuda -stop-after machine-cp -o - < %s 2>&1 | FileCheck %s 2 3; Check that convergent calls are emitted using convergent MIR instructions, 4; while non-convergent calls are not. 5 6target triple = "nvptx64-nvidia-cuda" 7 8declare void @conv() convergent 9declare void @not_conv() 10 11define void @test(void ()* %f) { 12 ; CHECK: ConvergentCallUniPrintCall 13 ; CHECK-NEXT: @conv 14 call void @conv() 15 16 ; CHECK: CallUniPrintCall 17 ; CHECK-NEXT: @not_conv 18 call void @not_conv() 19 20 ; CHECK: ConvergentCallPrintCall 21 call void %f() convergent 22 23 ; CHECK: CallPrintCall 24 call void %f() 25 26 ret void 27} 28