blob: 9da26adc15114c30c298fd07e190f2c422590d85 [file] [log] [blame]
Justin Holewinskicd069e62013-07-22 12:18:04 +00001; RUN: llc < %s -march=nvptx -mcpu=sm_20 | FileCheck %s
2
3
4declare float @llvm.nvvm.sqrt.f(float)
5
6
7; CHECK: sqrt_div
8; CHECK: sqrt.rn.f32
9; CHECK: div.rn.f32
10define float @sqrt_div(float %a, float %b) {
11 %t1 = tail call float @llvm.nvvm.sqrt.f(float %a)
12 %t2 = fdiv float %t1, %b
13 ret float %t2
14}
15
16; CHECK: sqrt_div_fast
17; CHECK: sqrt.approx.f32
18; CHECK: div.approx.f32
19define float @sqrt_div_fast(float %a, float %b) #0 {
20 %t1 = tail call float @llvm.nvvm.sqrt.f(float %a)
21 %t2 = fdiv float %t1, %b
22 ret float %t2
23}
24
25
26; CHECK: fadd
27; CHECK: add.f32
28define float @fadd(float %a, float %b) {
29 %t1 = fadd float %a, %b
30 ret float %t1
31}
32
33; CHECK: fadd_ftz
34; CHECK: add.ftz.f32
35define float @fadd_ftz(float %a, float %b) #1 {
36 %t1 = fadd float %a, %b
37 ret float %t1
38}
39
40
41
42attributes #0 = { "unsafe-fp-math" = "true" }
43attributes #1 = { "nvptx-f32ftz" = "true" }