23
23
24
24
25
25
;======================= end_copyright_notice ==================================
26
- ; RUN: opt -igc-fix-alignment -S %s -o %t.ll
26
+ ; RUN: igc_opt -igc-fix-alignment -S %s -o %t.ll
27
27
; RUN: FileCheck %s --input-file=%t.ll
28
28
29
- target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f16:16:16-f32:32:32-f64:64:64-f80:128:128-v16:16:16-v24:32:32-v32:32:32-v48:64:64-v64:64:64-v96:128:128-v128:128:128-v192:256:256-v256:256:256-v512:512:512-v1024:1024:1024-a64:64:64-f80:128:128-n8:16:32:64"
30
29
target triple = "igil_32_GEN9"
31
30
32
31
; Function Attrs: alwaysinline nounwind
@@ -39,26 +38,26 @@ entry:
39
38
%1 = zext i16 %localIdX to i32
40
39
%2 = add i32 %0 , %1
41
40
%3 = add i32 %2 , %scalar
42
- %arrayidx = getelementptr inbounds i8 addrspace (1 )* %src , i32 %3
41
+ %arrayidx = getelementptr inbounds i8 , i8 addrspace (1 )* %src , i32 %3
43
42
; CHECK: align 1
44
- %4 = load i8 addrspace (1 )* %arrayidx
43
+ %4 = load i8 , i8 addrspace (1 )* %arrayidx
45
44
%add = add nsw i32 %3 , 1
46
- %arrayidx1 = getelementptr inbounds i8 addrspace (1 )* %src , i32 %add
45
+ %arrayidx1 = getelementptr inbounds i8 , i8 addrspace (1 )* %src , i32 %add
47
46
; CHECK: align 1
48
- %5 = load i8 addrspace (1 )* %arrayidx1
47
+ %5 = load i8 , i8 addrspace (1 )* %arrayidx1
49
48
%add3 = add nsw i32 %3 , 2
50
- %arrayidx4 = getelementptr inbounds i8 addrspace (1 )* %src , i32 %add3
49
+ %arrayidx4 = getelementptr inbounds i8 , i8 addrspace (1 )* %src , i32 %add3
51
50
; CHECK: align 1
52
- %6 = load i8 addrspace (1 )* %arrayidx4
51
+ %6 = load i8 , i8 addrspace (1 )* %arrayidx4
53
52
%add6 = add nsw i32 %3 , 3
54
- %arrayidx7 = getelementptr inbounds i8 addrspace (1 )* %src , i32 %add6
53
+ %arrayidx7 = getelementptr inbounds i8 , i8 addrspace (1 )* %src , i32 %add6
55
54
; CHECK: align 1
56
- %7 = load i8 addrspace (1 )* %arrayidx7
55
+ %7 = load i8 , i8 addrspace (1 )* %arrayidx7
57
56
%assembled.vect = insertelement <4 x i8 > undef , i8 %4 , i32 0
58
57
%assembled.vect8 = insertelement <4 x i8 > %assembled.vect , i8 %5 , i32 1
59
58
%assembled.vect9 = insertelement <4 x i8 > %assembled.vect8 , i8 %6 , i32 2
60
59
%assembled.vect10 = insertelement <4 x i8 > %assembled.vect9 , i8 %7 , i32 3
61
- %arrayidx9 = getelementptr inbounds <4 x i8 > addrspace (1 )* %dst , i32 %3
60
+ %arrayidx9 = getelementptr inbounds <4 x i8 >, < 4 x i8 > addrspace (1 )* %dst , i32 %3
62
61
; CHECK: align 4
63
62
store <4 x i8 > %assembled.vect10 , <4 x i8 > addrspace (1 )* %arrayidx9
64
63
ret void
@@ -74,11 +73,11 @@ entry:
74
73
%1 = zext i16 %localIdX to i32
75
74
%2 = add i32 %0 , %1
76
75
%3 = add i32 %2 , %scalar
77
- %add.ptr = getelementptr inbounds i8 addrspace (1 )* %src , i32 %3
76
+ %add.ptr = getelementptr inbounds i8 , i8 addrspace (1 )* %src , i32 %3
78
77
%4 = bitcast i8 addrspace (1 )* %add.ptr to <4 x i8 > addrspace (1 )*
79
78
; CHECK: align 1
80
- %5 = load <4 x i8 > addrspace (1 )* %4
81
- %arrayidx = getelementptr inbounds <4 x i8 > addrspace (1 )* %dst , i32 %3
79
+ %5 = load <4 x i8 >, < 4 x i8 > addrspace (1 )* %4
80
+ %arrayidx = getelementptr inbounds <4 x i8 >, < 4 x i8 > addrspace (1 )* %dst , i32 %3
82
81
; CHECK: align 4
83
82
store <4 x i8 > %5 , <4 x i8 > addrspace (1 )* %arrayidx
84
83
ret void
@@ -94,11 +93,11 @@ entry:
94
93
%1 = zext i16 %localIdX to i32
95
94
%2 = add i32 %0 , %1
96
95
%3 = add i32 %2 , %scalar
97
- %add.ptr = getelementptr inbounds i8 addrspace (1 )* %src , i32 %3
98
- %4 = bitcast i8 addrspace (1 )* %add.ptr to <4 x i8 >*
96
+ %add.ptr = getelementptr inbounds i8 , i8 addrspace (1 )* %src , i32 %3
97
+ %4 = bitcast i8 addrspace (1 )* %add.ptr to <4 x i8 > addrspace ( 1 ) *
99
98
; CHECK: align 1
100
- %5 = load <4 x i8 >* %4
101
- %arrayidx = getelementptr inbounds <4 x i8 > addrspace (1 )* %dst , i32 %3
99
+ %5 = load <4 x i8 >, < 4 x i8 > addrspace ( 1 ) * %4
100
+ %arrayidx = getelementptr inbounds <4 x i8 >, < 4 x i8 > addrspace (1 )* %dst , i32 %3
102
101
; CHECK: align 4
103
102
store <4 x i8 > %5 , <4 x i8 > addrspace (1 )* %arrayidx
104
103
ret void
@@ -114,13 +113,13 @@ entry:
114
113
%1 = zext i16 %localIdX to i32
115
114
%2 = add i32 %0 , %1
116
115
%3 = add i32 %2 , %scalar
117
- %4 = bitcast <4 x i8 > addrspace (1 )* %src to i8*
116
+ %4 = bitcast <4 x i8 > addrspace (1 )* %src to i8 addrspace ( 1 ) *
118
117
%5 = shl i32 %3 , 2
119
- %6 = getelementptr inbounds i8* %4 , i32 %5
120
- %7 = bitcast i8* %6 to <4 x i8 >*
118
+ %6 = getelementptr inbounds i8 , i8 addrspace ( 1 ) * %4 , i32 %5
119
+ %7 = bitcast i8 addrspace ( 1 ) * %6 to <4 x i8 > addrspace ( 1 ) *
121
120
; CHECK: align 4
122
- %8 = load <4 x i8 >* %7
123
- %arrayidx = getelementptr inbounds <4 x i8 > addrspace (1 )* %dst , i32 %3
121
+ %8 = load <4 x i8 >, < 4 x i8 > addrspace ( 1 ) * %7
122
+ %arrayidx = getelementptr inbounds <4 x i8 >, < 4 x i8 > addrspace (1 )* %dst , i32 %3
124
123
; CHECK: align 4
125
124
store <4 x i8 > %8 , <4 x i8 > addrspace (1 )* %arrayidx
126
125
ret void
@@ -136,10 +135,10 @@ entry:
136
135
%1 = zext i16 %localIdX to i32
137
136
%2 = add i32 %0 , %1
138
137
%3 = add i32 %2 , %scalar
139
- %add.ptr = getelementptr inbounds <4 x i8 > addrspace (1 )* %src , i32 %3
138
+ %add.ptr = getelementptr inbounds <4 x i8 >, < 4 x i8 > addrspace (1 )* %src , i32 %3
140
139
; CHECK: align 4
141
- %4 = load <4 x i8 > addrspace (1 )* %add.ptr
142
- %arrayidx = getelementptr inbounds <4 x i8 > addrspace (1 )* %dst , i32 %3
140
+ %4 = load <4 x i8 >, < 4 x i8 > addrspace (1 )* %add.ptr
141
+ %arrayidx = getelementptr inbounds <4 x i8 >, < 4 x i8 > addrspace (1 )* %dst , i32 %3
143
142
; CHECK: align 4
144
143
store <4 x i8 > %4 , <4 x i8 > addrspace (1 )* %arrayidx
145
144
ret void
@@ -154,31 +153,31 @@ entry:
154
153
%1 = zext i16 %localIdX to i32
155
154
%2 = add i32 %0 , %1
156
155
%3 = add i32 %2 , %scalar
157
- %arrayidx = getelementptr inbounds i8 addrspace (1 )* %src , i32 %3
156
+ %arrayidx = getelementptr inbounds i8 , i8 addrspace (1 )* %src , i32 %3
158
157
; CHECK: align 1
159
- %4 = load i8 addrspace (1 )* %arrayidx
158
+ %4 = load i8 , i8 addrspace (1 )* %arrayidx
160
159
%add = add nsw i32 %3 , 1
161
- %arrayidx1 = getelementptr inbounds i8 addrspace (1 )* %src , i32 %add
160
+ %arrayidx1 = getelementptr inbounds i8 , i8 addrspace (1 )* %src , i32 %add
162
161
; CHECK: align 1
163
- %5 = load i8 addrspace (1 )* %arrayidx1
162
+ %5 = load i8 , i8 addrspace (1 )* %arrayidx1
164
163
%add3 = add nsw i32 %3 , 2
165
- %arrayidx4 = getelementptr inbounds i8 addrspace (1 )* %src , i32 %add3
164
+ %arrayidx4 = getelementptr inbounds i8 , i8 addrspace (1 )* %src , i32 %add3
166
165
; CHECK: align 1
167
- %6 = load i8 addrspace (1 )* %arrayidx4
166
+ %6 = load i8 , i8 addrspace (1 )* %arrayidx4
168
167
%add6 = add nsw i32 %3 , 3
169
- %arrayidx7 = getelementptr inbounds i8 addrspace (1 )* %src , i32 %add6
168
+ %arrayidx7 = getelementptr inbounds i8 , i8 addrspace (1 )* %src , i32 %add6
170
169
; CHECK: align 1
171
- %7 = load i8 addrspace (1 )* %arrayidx7
172
- %ptrVec2ptrScl = getelementptr inbounds <4 x i8 > addrspace (1 )* %dst , i32 %3 , i32 0
170
+ %7 = load i8 , i8 addrspace (1 )* %arrayidx7
171
+ %ptrVec2ptrScl = getelementptr inbounds <4 x i8 >, < 4 x i8 > addrspace (1 )* %dst , i32 %3 , i32 0
173
172
; CHECK: align 4
174
173
store i8 %4 , i8 addrspace (1 )* %ptrVec2ptrScl
175
- %GEP_lane8 = getelementptr <4 x i8 > addrspace (1 )* %dst , i32 %3 , i32 1
174
+ %GEP_lane8 = getelementptr <4 x i8 >, < 4 x i8 > addrspace (1 )* %dst , i32 %3 , i32 1
176
175
; CHECK: align 1
177
176
store i8 %5 , i8 addrspace (1 )* %GEP_lane8
178
- %GEP_lane9 = getelementptr <4 x i8 > addrspace (1 )* %dst , i32 %3 , i32 2
177
+ %GEP_lane9 = getelementptr <4 x i8 >, < 4 x i8 > addrspace (1 )* %dst , i32 %3 , i32 2
179
178
; CHECK: align 2
180
179
store i8 %6 , i8 addrspace (1 )* %GEP_lane9
181
- %GEP_lane10 = getelementptr <4 x i8 > addrspace (1 )* %dst , i32 %3 , i32 3
180
+ %GEP_lane10 = getelementptr <4 x i8 >, < 4 x i8 > addrspace (1 )* %dst , i32 %3 , i32 3
182
181
; CHECK: align 1
183
182
store i8 %7 , i8 addrspace (1 )* %GEP_lane10
184
183
ret void
0 commit comments