[NVPTX] Add codegen tests for llvm.fma.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@292070 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Justin Lebar 2017-01-15 16:55:37 +00:00
parent be5157f530
commit 164f3ff43b

View File

@ -21,6 +21,8 @@ declare float @llvm.minnum.f32(float, float) #0
declare double @llvm.minnum.f64(double, double) #0
declare float @llvm.maxnum.f32(float, float) #0
declare double @llvm.maxnum.f64(double, double) #0
declare float @llvm.fma.f32(float, float, float) #0
declare double @llvm.fma.f64(double, double, double) #0
; ---- ceil ----
@ -257,5 +259,28 @@ define double @max_double(double %a, double %b) {
ret double %x
}
; ---- fma ----
; CHECK-LABEL: @fma_float
define float @fma_float(float %a, float %b, float %c) {
; CHECK: fma.rn.f32
%x = call float @llvm.fma.f32(float %a, float %b, float %c)
ret float %x
}
; CHECK-LABEL: @fma_float_ftz
define float @fma_float_ftz(float %a, float %b, float %c) #1 {
; CHECK: fma.rn.ftz.f32
%x = call float @llvm.fma.f32(float %a, float %b, float %c)
ret float %x
}
; CHECK-LABEL: @fma_double
define double @fma_double(double %a, double %b, double %c) {
; CHECK: fma.rn.f64
%x = call double @llvm.fma.f64(double %a, double %b, double %c)
ret double %x
}
attributes #0 = { nounwind readnone }
attributes #1 = { "nvptx-f32ftz" = "true" }