Home | History | Annotate | Download | only in ARM
      1 ; RUN: llc < %s -march=arm -mattr=+neon | FileCheck %s
      2 
      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 }
     11 
     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 }
     20 
     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 }
     29 
     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 }
     38