[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / CodeGen / AMDGPU / bitcast-constant-to-vector.ll
blobea5f01fbda0f7d7d2168703a939ad20ff9bd3ead
1 ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -verify-machineinstrs < %s | FileCheck -check-prefix=GCN %s
3 ; GCN-LABEL: {{^}}cast_constant_i64_to_build_vector_v4i16:
4 ; GCN: global_store_dwordx2
5 ; GCN: global_store_dword v
6 ; GCN: global_store_short
7 define amdgpu_kernel void @cast_constant_i64_to_build_vector_v4i16(i8 addrspace(1)* nocapture %data) {
8 entry:
9   store i8 72, i8 addrspace(1)* %data, align 1
10   %arrayidx1 = getelementptr inbounds i8, i8 addrspace(1)* %data, i64 1
11   store i8 101, i8 addrspace(1)* %arrayidx1, align 1
12   %arrayidx2 = getelementptr inbounds i8, i8 addrspace(1)* %data, i64 2
13   store i8 108, i8 addrspace(1)* %arrayidx2, align 1
14   %arrayidx3 = getelementptr inbounds i8, i8 addrspace(1)* %data, i64 3
15   store i8 108, i8 addrspace(1)* %arrayidx3, align 1
16   %arrayidx4 = getelementptr inbounds i8, i8 addrspace(1)* %data, i64 4
17   store i8 111, i8 addrspace(1)* %arrayidx4, align 1
18   %arrayidx5 = getelementptr inbounds i8, i8 addrspace(1)* %data, i64 5
19   store i8 44, i8 addrspace(1)* %arrayidx5, align 1
20   %arrayidx6 = getelementptr inbounds i8, i8 addrspace(1)* %data, i64 6
21   store i8 32, i8 addrspace(1)* %arrayidx6, align 1
22   %arrayidx7 = getelementptr inbounds i8, i8 addrspace(1)* %data, i64 7
23   store i8 87, i8 addrspace(1)* %arrayidx7, align 1
24   %arrayidx8 = getelementptr inbounds i8, i8 addrspace(1)* %data, i64 8
25   store i8 111, i8 addrspace(1)* %arrayidx8, align 1
26   %arrayidx9 = getelementptr inbounds i8, i8 addrspace(1)* %data, i64 9
27   store i8 114, i8 addrspace(1)* %arrayidx9, align 1
28   %arrayidx10 = getelementptr inbounds i8, i8 addrspace(1)* %data, i64 10
29   store i8 108, i8 addrspace(1)* %arrayidx10, align 1
30   %arrayidx11 = getelementptr inbounds i8, i8 addrspace(1)* %data, i64 11
31   store i8 100, i8 addrspace(1)* %arrayidx11, align 1
32   %arrayidx12 = getelementptr inbounds i8, i8 addrspace(1)* %data, i64 12
33   store i8 33, i8 addrspace(1)* %arrayidx12, align 1
34   %arrayidx13 = getelementptr inbounds i8, i8 addrspace(1)* %data, i64 13
35   store i8 72, i8 addrspace(1)* %arrayidx13, align 1
36   ret void