R600: Add 64-bit float load/store support
[oota-llvm.git] / test / CodeGen / R600 / fp_to_uint.ll
1 ; RUN: llc < %s -march=r600 -mcpu=redwood | FileCheck %s
2
3 ; CHECK: @fp_to_uint_v2i32
4 ; CHECK: FLT_TO_UINT * T{{[0-9]+\.[XYZW], PV\.[XYZW]}}
5 ; CHECK: FLT_TO_UINT * T{{[0-9]+\.[XYZW], PV\.[XYZW]}}
6
7 define void @fp_to_uint_v2i32(<2 x i32> addrspace(1)* %out, <2 x float> %in) {
8   %result = fptoui <2 x float> %in to <2 x i32>
9   store <2 x i32> %result, <2 x i32> addrspace(1)* %out
10   ret void
11 }
12
13 ; CHECK: @fp_to_uint_v4i32
14 ; CHECK: FLT_TO_UINT * T{{[0-9]+\.[XYZW], PV\.[XYZW]}}
15 ; CHECK: FLT_TO_UINT * T{{[0-9]+\.[XYZW], PV\.[XYZW]}}
16 ; CHECK: FLT_TO_UINT * T{{[0-9]+\.[XYZW], PV\.[XYZW]}}
17 ; CHECK: FLT_TO_UINT * T{{[0-9]+\.[XYZW], PV\.[XYZW]}}
18
19 define void @fp_to_uint_v4i32(<4 x i32> addrspace(1)* %out, <4 x float> addrspace(1)* %in) {
20   %value = load <4 x float> addrspace(1) * %in
21   %result = fptoui <4 x float> %value to <4 x i32>
22   store <4 x i32> %result, <4 x i32> addrspace(1)* %out
23   ret void
24 }