1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-01-31 20:51:52 +01:00

[NVPTX] Add codegen tests for llvm.fma.

llvm-svn: 292070
This commit is contained in:
Justin Lebar 2017-01-15 16:55:37 +00:00
parent 28196eb709
commit 2166b8131c

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" }