1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --include-generated-funcs 2; RUN: opt -S -passes=verify,iroutliner -ir-outlining-no-cost < %s | FileCheck %s 3 4; Check that we do not outline musttail calls when swifttailcc is present. 5 6declare swifttailcc void @musttail() 7 8define swifttailcc void @f1() { 9 %a = alloca i32, align 4 10 store i32 2, ptr %a, align 4 11 musttail call swifttailcc void @musttail() 12 ret void 13} 14 15define swifttailcc void @f2() { 16 %a = alloca i32, align 4 17 store i32 2, ptr %a, align 4 18 musttail call swifttailcc void @musttail() 19 ret void 20} 21; CHECK-LABEL: @f1( 22; CHECK-NEXT: [[A:%.*]] = alloca i32, align 4 23; CHECK-NEXT: store i32 2, ptr [[A]], align 4 24; CHECK-NEXT: musttail call swifttailcc void @musttail() 25; CHECK-NEXT: ret void 26; 27; 28; CHECK-LABEL: @f2( 29; CHECK-NEXT: [[A:%.*]] = alloca i32, align 4 30; CHECK-NEXT: store i32 2, ptr [[A]], align 4 31; CHECK-NEXT: musttail call swifttailcc void @musttail() 32; CHECK-NEXT: ret void 33; 34