1; RUN: llc -march=hexagon < %s | FileCheck %s
2;
3; Generate stores with assignment of constant values.
4
5; CHECK: memw{{.*}} = {{.*}}#0
6; CHECK: memw{{.*}} = {{.*}}#1
7; CHECK: memh{{.*}} = {{.*}}#2
8; CHECK: memh{{.*}} = {{.*}}#3
9; CHECK: memb{{.*}} = {{.*}}#4
10; CHECK: memb{{.*}} = {{.*}}#5
11
12define void @f0(i32* nocapture %a0) #0 {
13b0:
14  store i32 0, i32* %a0, align 4
15  ret void
16}
17
18define void @f1(i32* nocapture %a0) #0 {
19b0:
20  %v0 = getelementptr inbounds i32, i32* %a0, i32 1
21  store i32 1, i32* %v0, align 4
22  ret void
23}
24
25define void @f2(i16* nocapture %a0) #0 {
26b0:
27  store i16 2, i16* %a0, align 2
28  ret void
29}
30
31define void @f3(i16* nocapture %a0) #0 {
32b0:
33  %v0 = getelementptr inbounds i16, i16* %a0, i32 2
34  store i16 3, i16* %v0, align 2
35  ret void
36}
37
38define void @f4(i8* nocapture %a0) #0 {
39b0:
40  store i8 4, i8* %a0, align 1
41  ret void
42}
43
44define void @f5(i8* nocapture %a0) #0 {
45b0:
46  %v0 = getelementptr inbounds i8, i8* %a0, i32 2
47  store i8 5, i8* %v0, align 1
48  ret void
49}
50
51attributes #0 = { nounwind }
52