a7a909addafb60da4a6223ac50d0ef94a349a860
[oota-llvm.git] / test / CodeGen / R600 / llvm.rint.f64.ll
1 ; RUN: llc -march=r600 -mcpu=bonaire -verify-machineinstrs < %s | FileCheck -check-prefix=CI -check-prefix=FUNC %s
2
3 ; FUNC-LABEL: @f64
4 ; CI: V_RNDNE_F64_e32
5 define void @f64(double addrspace(1)* %out, double %in) {
6 entry:
7   %0 = call double @llvm.rint.f64(double %in)
8   store double %0, double addrspace(1)* %out
9   ret void
10 }
11
12 ; FUNC-LABEL: @v2f64
13 ; CI: V_RNDNE_F64_e32
14 ; CI: V_RNDNE_F64_e32
15 define void @v2f64(<2 x double> addrspace(1)* %out, <2 x double> %in) {
16 entry:
17   %0 = call <2 x double> @llvm.rint.v2f64(<2 x double> %in)
18   store <2 x double> %0, <2 x double> addrspace(1)* %out
19   ret void
20 }
21
22 ; FUNC-LABEL: @v4f64
23 ; CI: V_RNDNE_F64_e32
24 ; CI: V_RNDNE_F64_e32
25 ; CI: V_RNDNE_F64_e32
26 ; CI: V_RNDNE_F64_e32
27 define void @v4f64(<4 x double> addrspace(1)* %out, <4 x double> %in) {
28 entry:
29   %0 = call <4 x double> @llvm.rint.v4f64(<4 x double> %in)
30   store <4 x double> %0, <4 x double> addrspace(1)* %out
31   ret void
32 }
33
34
35 declare double @llvm.rint.f64(double) #0
36 declare <2 x double> @llvm.rint.v2f64(<2 x double>) #0
37 declare <4 x double> @llvm.rint.v4f64(<4 x double>) #0