brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.5 KiB · 936cc6a Raw
48 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 52; RUN: llc < %s -mtriple=aarch64-- | FileCheck %s --check-prefixes=CHECK3 4define float @positive_case_fma(float %a0, float %a1, float %a2) {5; CHECK-LABEL: positive_case_fma:6; CHECK:       // %bb.0:7; CHECK-NEXT:    fnmadd s0, s0, s1, s28; CHECK-NEXT:    ret9  %fma = call float @llvm.fma.f32(float %a0, float %a1, float %a2)10  %freeze = freeze float %fma11  %fneg = fneg float %freeze12  ret float %fneg13}14 15define float @negative_case_fma(float %a0, float %a1) {16; CHECK-LABEL: negative_case_fma:17; CHECK:       // %bb.0:18; CHECK-NEXT:    fnmadd s0, s0, s1, s019; CHECK-NEXT:    ret20  %fma = call float @llvm.fma.f32(float %a0, float %a1, float poison)21  %freeze = freeze float %fma22  %fneg = fneg float %freeze23  ret float %fneg24}25 26define float @positive_case_fmad(float %a0, float %a1, float %a2) {27; CHECK-LABEL: positive_case_fmad:28; CHECK:       // %bb.0:29; CHECK-NEXT:    fnmadd s0, s0, s1, s230; CHECK-NEXT:    ret31  %fma = call float @llvm.fma.f32(float %a0, float %a1, float %a2)32  %freeze = freeze float %fma33  %fneg = fneg float %freeze34  ret float %fneg35}36 37define float @negative_case_fmad(float %a0, float %a1) {38; CHECK-LABEL: negative_case_fmad:39; CHECK:       // %bb.0:40; CHECK-NEXT:    fnmadd s0, s0, s1, s041; CHECK-NEXT:    ret42  %fmad = call float @llvm.fmuladd.f32(float %a0, float %a1, float poison)43  %freeze = freeze float %fmad44  %fneg = fneg float %freeze45  ret float %fneg46}47 48