1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2 ; RUN: llc -mcpu=pwr8 -mtriple=powerpc64le-unknown-unknown \
3 ; RUN: -ppc-vsr-nums-as-vr -ppc-asm-full-reg-names < %s | FileCheck %s
5 define dso_local signext i32 @caller(i32 signext %a, i32 signext %b) local_unnamed_addr {
7 ; CHECK: # %bb.0: # %entry
9 ; CHECK-NEXT: std r0, 16(r1)
10 ; CHECK-NEXT: stdu r1, -240(r1)
11 ; CHECK-NEXT: .cfi_def_cfa_offset 240
12 ; CHECK-NEXT: .cfi_offset lr, 16
13 ; CHECK-NEXT: .cfi_offset v20, -192
14 ; CHECK-NEXT: li r5, 48
15 ; CHECK-NEXT: stxvd2x v20, r1, r5 # 16-byte Folded Spill
17 ; CHECK-NEXT: add r3, r3, r4
19 ; CHECK-NEXT: extsw r3, r3
20 ; CHECK-NEXT: bl callee
22 ; CHECK-NEXT: li r4, 48
23 ; CHECK-NEXT: lxvd2x v20, r1, r4 # 16-byte Folded Reload
24 ; CHECK-NEXT: addi r1, r1, 240
25 ; CHECK-NEXT: ld r0, 16(r1)
29 %0 = tail call i32 asm "add $0, $1, $2", "=r,r,r,~{v20}"(i32 %a, i32 %b)
30 %call = tail call signext i32 @callee(i32 signext %0)
34 declare signext i32 @callee(i32 signext) local_unnamed_addr