blob: 8b92942287663325db15f3d2ef28cf78d0cc48ce [file] [log] [blame]
Jim Stichnoth5bc2b1d2014-05-22 13:38:48 -07001; Simple test of the store instruction.
2
Karl Schimpf2a5324a2014-09-25 09:37:49 -07003; TODO(kschimpf) Find out why lc2i is needed, and fix.
4; RUN: %lc2i -i %s --args --verbose inst | FileCheck %s
5; RUN: %lc2i -i %s --args --verbose none | FileCheck --check-prefix=ERRORS %s
6; RUN: %lc2i -i %s --insts | %szdiff %s | FileCheck --check-prefix=DUMP %s
Jim Stichnothf7c9a142014-04-29 10:52:43 -07007
8define void @store_i64(i32 %addr_arg) {
9entry:
Karl Schimpfa667fb82014-05-19 14:56:51 -070010 %__1 = inttoptr i32 %addr_arg to i64*
11 store i64 1, i64* %__1, align 1
Jim Stichnothf7c9a142014-04-29 10:52:43 -070012 ret void
13
Jim Stichnoth5bc2b1d2014-05-22 13:38:48 -070014; CHECK: Initial CFG
Karl Schimpfa667fb82014-05-19 14:56:51 -070015; CHECK: %__1 = i32 %addr_arg
Jim Stichnothf7c9a142014-04-29 10:52:43 -070016; CHECK-NEXT: store i64 1, {{.*}}, align 1
17; CHECK-NEXT: ret void
18}
19
20define void @store_i32(i32 %addr_arg) {
21entry:
Karl Schimpfa667fb82014-05-19 14:56:51 -070022 %__1 = inttoptr i32 %addr_arg to i32*
23 store i32 1, i32* %__1, align 1
Jim Stichnothf7c9a142014-04-29 10:52:43 -070024 ret void
25
Jim Stichnoth5bc2b1d2014-05-22 13:38:48 -070026; CHECK: Initial CFG
Karl Schimpfa667fb82014-05-19 14:56:51 -070027; CHECK: %__1 = i32 %addr_arg
Jim Stichnothf7c9a142014-04-29 10:52:43 -070028; CHECK-NEXT: store i32 1, {{.*}}, align 1
29; CHECK-NEXT: ret void
30}
31
32define void @store_i16(i32 %addr_arg) {
33entry:
Karl Schimpfa667fb82014-05-19 14:56:51 -070034 %__1 = inttoptr i32 %addr_arg to i16*
35 store i16 1, i16* %__1, align 1
Jim Stichnothf7c9a142014-04-29 10:52:43 -070036 ret void
37
Jim Stichnoth5bc2b1d2014-05-22 13:38:48 -070038; CHECK: Initial CFG
Karl Schimpfa667fb82014-05-19 14:56:51 -070039; CHECK: %__1 = i32 %addr_arg
Jim Stichnothf7c9a142014-04-29 10:52:43 -070040; CHECK-NEXT: store i16 1, {{.*}}, align 1
41; CHECK-NEXT: ret void
42}
43
44define void @store_i8(i32 %addr_arg) {
45entry:
Karl Schimpfa667fb82014-05-19 14:56:51 -070046 %__1 = inttoptr i32 %addr_arg to i8*
47 store i8 1, i8* %__1, align 1
Jim Stichnothf7c9a142014-04-29 10:52:43 -070048 ret void
49
Jim Stichnoth5bc2b1d2014-05-22 13:38:48 -070050; CHECK: Initial CFG
Karl Schimpfa667fb82014-05-19 14:56:51 -070051; CHECK: %__1 = i32 %addr_arg
Jim Stichnothf7c9a142014-04-29 10:52:43 -070052; CHECK-NEXT: store i8 1, {{.*}}, align 1
53; CHECK-NEXT: ret void
54}
55
56; ERRORS-NOT: ICE translation error
57; DUMP-NOT: SZ