[LLVM][IR] Use splat syntax when printing ConstantExpr based splats. (#116856)
[llvm-project.git] / llvm / test / CodeGen / NVPTX / rsqrt.ll
blobc7367245c532e33bc7f692ca03850b784229a699
1 ; RUN: llc < %s -march=nvptx64 | FileCheck %s
2 ; RUN: %if ptxas %{ llc < %s -march=nvptx64 | %ptxas-verify %}
4 ; CHECK-LABEL: .func{{.*}}test1
5 define float @test1(float %in) local_unnamed_addr {
6 ; CHECK: rsqrt.approx.f32
7   %call = call float @llvm.nvvm.rsqrt.approx.f(float %in)
8   ret float %call
11 ; CHECK-LABEL: .func{{.*}}test2
12 define double @test2(double %in) local_unnamed_addr {
13 ; CHECK: rsqrt.approx.f64
14   %call = call double @llvm.nvvm.rsqrt.approx.d(double %in)
15   ret double %call
18 ; CHECK-LABEL: .func{{.*}}test3
19 define float @test3(float %in) local_unnamed_addr {
20 ; CHECK: rsqrt.approx.ftz.f32
21   %call = tail call float @llvm.nvvm.rsqrt.approx.ftz.f(float %in)
22   ret float %call
25 ; CHECK-LABEL: .func{{.*}}test4
26 define double @test4(double %in) local_unnamed_addr {
27 ; CHECK: rsqrt.approx.ftz.f64
28   %call = tail call double @llvm.nvvm.rsqrt.approx.ftz.d(double %in)
29   ret double %call
32 declare float @llvm.nvvm.rsqrt.approx.ftz.f(float)
33 declare double @llvm.nvvm.rsqrt.approx.ftz.d(double)
34 declare float @llvm.nvvm.rsqrt.approx.f(float)
35 declare double @llvm.nvvm.rsqrt.approx.d(double)