brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.2 KiB · 4ae92f0 Raw
34 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -mtriple=aarch64--linux-gnu -mattr=+sve < %s | FileCheck %s3 4declare i32 @sve_printf(ptr, <vscale x 4 x i32>, ...)5 6@.str_1 = internal constant [6 x i8] c"boo!\0A\00"7 8define void @foo_nontail(<vscale x 4 x i32> %x) uwtable {9; CHECK-LABEL: foo_nontail:10; CHECK:       // %bb.0:11; CHECK-NEXT:    str x30, [sp, #-16]! // 8-byte Folded Spill12; CHECK-NEXT:    .cfi_def_cfa_offset 1613; CHECK-NEXT:    .cfi_offset w30, -1614; CHECK-NEXT:    adrp x0, .str_115; CHECK-NEXT:    add x0, x0, :lo12:.str_116; CHECK-NEXT:    bl sve_printf17; CHECK-NEXT:    ldr x30, [sp], #16 // 8-byte Folded Reload18; CHECK-NEXT:    .cfi_def_cfa_offset 019; CHECK-NEXT:    .cfi_restore w3020; CHECK-NEXT:    ret21  call i32 (ptr, <vscale x 4 x i32>, ...) @sve_printf(ptr @.str_1, <vscale x 4 x i32> %x)22  ret void23}24 25define void @foo_tail(<vscale x 4 x i32> %x) uwtable {26; CHECK-LABEL: foo_tail:27; CHECK:       // %bb.0:28; CHECK-NEXT:    adrp x0, .str_129; CHECK-NEXT:    add x0, x0, :lo12:.str_130; CHECK-NEXT:    b sve_printf31  tail call i32 (ptr, <vscale x 4 x i32>, ...) @sve_printf(ptr @.str_1, <vscale x 4 x i32> %x)32  ret void33}34