1 ; RUN: llc -mtriple=arm-eabi -mattr=+neon %s -o - | FileCheck %s
3 define <2 x i32> @test1(<2 x double>* %A) {
4 ; CHECK: test1
5 ; CHECK: vcvt.s32.f64
6 ; CHECK: vcvt.s32.f64
7 %tmp1 = load <2 x double>* %A
8 %tmp2 = fptosi <2 x double> %tmp1 to <2 x i32>
9 ret <2 x i32> %tmp2
10 }
12 define <2 x i32> @test2(<2 x double>* %A) {
13 ; CHECK: test2
14 ; CHECK: vcvt.u32.f64
15 ; CHECK: vcvt.u32.f64
16 %tmp1 = load <2 x double>* %A
17 %tmp2 = fptoui <2 x double> %tmp1 to <2 x i32>
18 ret <2 x i32> %tmp2
19 }
21 define <2 x double> @test3(<2 x i32>* %A) {
22 ; CHECK: test3
23 ; CHECK: vcvt.f64.s32
24 ; CHECK: vcvt.f64.s32
25 %tmp1 = load <2 x i32>* %A
26 %tmp2 = sitofp <2 x i32> %tmp1 to <2 x double>
27 ret <2 x double> %tmp2
28 }
30 define <2 x double> @test4(<2 x i32>* %A) {
31 ; CHECK: test4
32 ; CHECK: vcvt.f64.u32
33 ; CHECK: vcvt.f64.u32
34 %tmp1 = load <2 x i32>* %A
35 %tmp2 = uitofp <2 x i32> %tmp1 to <2 x double>
36 ret <2 x double> %tmp2
37 }