Kyle Butt | d62d8b7 | 2016-02-03 01:41:09 +0000 | [diff] [blame] | 1 | ; RUN: llc -fp-contract=fast -O2 < %s | FileCheck %s |
| 2 | target datalayout = "e-m:e-i64:64-n32:64" |
| 3 | target triple = "powerpc64le-grtev4-linux-gnu" |
| 4 | |
| 5 | ; CHECK-LABEL: f |
| 6 | ; CHECK-NOT: xsmaddmsp [[REG:[0-9]+]], [[REG]], {{[0-9]+}} |
| 7 | define float @f(float %xf) #0 { |
| 8 | %1 = fmul float %xf, %xf |
| 9 | %2 = fmul float %1, 0x3F43FB0140000000 |
| 10 | %3 = fsub float 1.000000e+00, %2 |
| 11 | %4 = fmul float %1, %3 |
| 12 | %5 = fmul float %4, 0x3F461C5440000000 |
| 13 | %6 = fsub float 1.000000e+00, %5 |
| 14 | %7 = fmul float %1, %6 |
| 15 | %8 = fmul float %7, 0x3F4899C100000000 |
| 16 | %9 = fsub float 1.000000e+00, %8 |
| 17 | %10 = fmul float %1, %9 |
| 18 | %11 = fmul float %10, 0x3F4B894020000000 |
| 19 | %12 = fsub float 1.000000e+00, %11 |
| 20 | %13 = fmul float %1, %12 |
| 21 | %14 = fmul float %13, 0x3F4F07C200000000 |
| 22 | %15 = fsub float 1.000000e+00, %14 |
| 23 | %16 = fmul float %1, %15 |
| 24 | %17 = fmul float %16, 0x3F519E0120000000 |
| 25 | %18 = fsub float 1.000000e+00, %17 |
| 26 | %19 = fmul float %1, %18 |
| 27 | %20 = fmul float %19, 0x3F542D6620000000 |
| 28 | %21 = fsub float 1.000000e+00, %20 |
| 29 | %22 = fmul float %1, %21 |
| 30 | %23 = fmul float %22, 0x3F5756CAC0000000 |
| 31 | %24 = fsub float 1.000000e+00, %23 |
| 32 | %25 = fmul float %1, %24 |
| 33 | ret float %25 |
| 34 | } |
| 35 | |
| 36 | attributes #0 = { norecurse nounwind readnone "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="pwr8" "target-features"="+altivec,+bpermd,+crypto,+direct-move,+extdiv,+power8-vector,+vsx,-qpx" "unsafe-fp-math"="false" "use-soft-float"="false" } |