xref: /llvm-project/llvm/test/CodeGen/PowerPC/pr56469.ll (revision eb7d16ea25649909373e324e6ebf36774cabdbfa)
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2; RUN: llc -verify-machineinstrs -mtriple=powerpc-unknown-openbsd < %s | FileCheck %s
3
4@.str = private constant [32 x i8] c"i = %g, j = %g, k = %g, l = %g\0A\00", align 1
5
6define void @callee(float  %a, float  %b, float  %c, float  %d, float  %e, float  %f, float  %g, float  %h, float  %i, float  %j, float  %k, float  %l)  nounwind {
7; CHECK-LABEL: callee:
8; CHECK:       # %bb.0: # %entry
9; CHECK-NEXT:    mflr 0
10; CHECK-NEXT:    stwu 1, -16(1)
11; CHECK-NEXT:    lfs 1, 24(1)
12; CHECK-NEXT:    lis 3, .L.str@ha
13; CHECK-NEXT:    lfs 2, 28(1)
14; CHECK-NEXT:    la 3, .L.str@l(3)
15; CHECK-NEXT:    lfs 3, 32(1)
16; CHECK-NEXT:    creqv 6, 6, 6
17; CHECK-NEXT:    lfs 4, 36(1)
18; CHECK-NEXT:    stw 0, 20(1)
19; CHECK-NEXT:    bl printf
20; CHECK-NEXT:    lwz 0, 20(1)
21; CHECK-NEXT:    addi 1, 1, 16
22; CHECK-NEXT:    mtlr 0
23; CHECK-NEXT:    blr
24entry:
25  %conv = fpext float %i to double
26  %conv1 = fpext float %j to double
27  %conv2 = fpext float %k to double
28  %conv3 = fpext float %l to double
29  %call = tail call signext i32 (ptr, ...) @printf(ptr  nonnull dereferenceable(1) @.str, double  %conv, double  %conv1, double  %conv2, double  %conv3)
30  ret void
31}
32
33declare  signext i32 @printf(ptr nocapture  readonly, ...)
34
35