comparison test/CodeGen/AMDGPU/xfail.r600.bitcast.ll @ 121:803732b1fca8

LLVM 5.0
author kono
date Fri, 27 Oct 2017 17:07:41 +0900
parents 1172e4bd9c6f
children
comparison
equal deleted inserted replaced
120:1172e4bd9c6f 121:803732b1fca8
3 3
4 ; This is the failing part of the r600 bitacts tests 4 ; This is the failing part of the r600 bitacts tests
5 5
6 ; TODO: enable doubles 6 ; TODO: enable doubles
7 ; FUNC-LABEL: {{^}}bitcast_f64_to_v2i32: 7 ; FUNC-LABEL: {{^}}bitcast_f64_to_v2i32:
8 define void @bitcast_f64_to_v2i32(<2 x i32> addrspace(1)* %out, double addrspace(1)* %in) { 8 define amdgpu_kernel void @bitcast_f64_to_v2i32(<2 x i32> addrspace(1)* %out, double addrspace(1)* %in) {
9 %val = load double, double addrspace(1)* %in, align 8 9 %val = load double, double addrspace(1)* %in, align 8
10 %add = fadd double %val, 4.0 10 %add = fadd double %val, 4.0
11 %bc = bitcast double %add to <2 x i32> 11 %bc = bitcast double %add to <2 x i32>
12 store <2 x i32> %bc, <2 x i32> addrspace(1)* %out, align 8 12 store <2 x i32> %bc, <2 x i32> addrspace(1)* %out, align 8
13 ret void 13 ret void
14 } 14 }
15 15
16 ; FUNC-LABEL: {{^}}bitcast_v2i64_to_v2f64: 16 ; FUNC-LABEL: {{^}}bitcast_v2i64_to_v2f64:
17 define void @bitcast_v2i64_to_v2f64(i32 %cond, <2 x double> addrspace(1)* %out, <2 x i64> %value) { 17 define amdgpu_kernel void @bitcast_v2i64_to_v2f64(i32 %cond, <2 x double> addrspace(1)* %out, <2 x i64> %value) {
18 entry: 18 entry:
19 %cmp0 = icmp eq i32 %cond, 0 19 %cmp0 = icmp eq i32 %cond, 0
20 br i1 %cmp0, label %if, label %end 20 br i1 %cmp0, label %if, label %end
21 21
22 if: 22 if:
28 store <2 x double> %phi, <2 x double> addrspace(1)* %out 28 store <2 x double> %phi, <2 x double> addrspace(1)* %out
29 ret void 29 ret void
30 } 30 }
31 31
32 ; FUNC-LABEL: {{^}}bitcast_v2f64_to_v2i64: 32 ; FUNC-LABEL: {{^}}bitcast_v2f64_to_v2i64:
33 define void @bitcast_v2f64_to_v2i64(i32 %cond, <2 x i64> addrspace(1)* %out, <2 x double> %value) { 33 define amdgpu_kernel void @bitcast_v2f64_to_v2i64(i32 %cond, <2 x i64> addrspace(1)* %out, <2 x double> %value) {
34 entry: 34 entry:
35 %cmp0 = icmp eq i32 %cond, 0 35 %cmp0 = icmp eq i32 %cond, 0
36 br i1 %cmp0, label %if, label %end 36 br i1 %cmp0, label %if, label %end
37 37
38 if: 38 if: