brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.5 KiB · 6b43bdf Raw
43 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --no-generate-body-for-unused-prefixes2; RUN: llc -fast-isel -fast-isel-abort=3 < %s | FileCheck %s3target datalayout = "e-m:e-i64:64-i128:128-n32:64-S128"4target triple = "aarch64-linux-gnu"5 6declare { i64, i64 } @ret_s2i64()7 8define i64 @call_ret_s2i64() {9; CHECK-LABEL: call_ret_s2i64: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:    bl ret_s2i6415; CHECK-NEXT:    add x0, x0, x116; CHECK-NEXT:    ldr x30, [sp], #16 // 8-byte Folded Reload17; CHECK-NEXT:    ret18  %ret = call { i64, i64 } @ret_s2i64()19  %ext0 = extractvalue { i64, i64 } %ret, 020  %ext1 = extractvalue { i64, i64 } %ret, 121  %sum = add i64 %ext0, %ext122  ret i64 %sum23}24 25declare { i64, i64, i64, i64, i64, i64, i64, i64 } @ret_s8i64()26 27define i64 @call_ret_s8i64() {28; CHECK-LABEL: call_ret_s8i64:29; CHECK:       // %bb.0:30; CHECK-NEXT:    str x30, [sp, #-16]! // 8-byte Folded Spill31; CHECK-NEXT:    .cfi_def_cfa_offset 1632; CHECK-NEXT:    .cfi_offset w30, -1633; CHECK-NEXT:    bl ret_s8i6434; CHECK-NEXT:    add x0, x0, x735; CHECK-NEXT:    ldr x30, [sp], #16 // 8-byte Folded Reload36; CHECK-NEXT:    ret37  %ret = call { i64, i64, i64, i64, i64, i64, i64, i64 } @ret_s8i64()38  %ext0 = extractvalue { i64, i64, i64, i64, i64, i64, i64, i64 } %ret, 039  %ext7 = extractvalue { i64, i64, i64, i64, i64, i64, i64, i64 } %ret, 740  %sum = add i64 %ext0, %ext741  ret i64 %sum42}43