21 lines · plain
1; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z16 | FileCheck %s2;3; Check that a multiply-and-add *not* result for half.4 5define half @f1(half %arg, half %A2, half %A3) {6; CHECK-LABEL: f1:7; CHECK: brasl %r14, __extendhfsf2@PLT8; CHECK: brasl %r14, __extendhfsf2@PLT9; CHECK: meebr %f0, %f1010; CHECK: brasl %r14, __truncsfhf2@PLT11; CHECK: brasl %r14, __extendhfsf2@PLT12; CHECK: brasl %r14, __extendhfsf2@PLT13; CHECK: wfasb %f0, %f9, %f014; CHECK: brasl %r14, __truncsfhf2@PLT15 16bb:17 %i = fmul contract half %arg, %A218 %i4 = fadd contract half %i, %A319 ret half %i420}21