36 lines · plain
1; RUN: mlir-translate -import-llvm -split-input-file %s | FileCheck %s2 3; CHECK: llvm.func @tailkind()4declare void @tailkind()5 6; CHECK-LABEL: @call_tailkind7define void @call_tailkind() {8 ; CHECK: llvm.call musttail @tailkind()9 musttail call void @tailkind()10 ret void11}12 13; // -----14 15; CHECK: llvm.func @tailkind()16declare void @tailkind()17 18; CHECK-LABEL: @call_tailkind19define void @call_tailkind() {20 ; CHECK: llvm.call tail @tailkind()21 tail call void @tailkind()22 ret void23}24 25; // -----26 27; CHECK: llvm.func @tailkind()28declare void @tailkind()29 30; CHECK-LABEL: @call_tailkind31define void @call_tailkind() {32 ; CHECK: llvm.call notail @tailkind()33 notail call void @tailkind()34 ret void35}36