File tree Expand file tree Collapse file tree 1 file changed +24
-0
lines changed
llvm/test/Transforms/InstSimplify Expand file tree Collapse file tree 1 file changed +24
-0
lines changed Original file line number Diff line number Diff line change @@ -229,6 +229,30 @@ define <4 x i8> @ucmp_with_addition_vec(<4 x i32> %x) {
229
229
ret <4 x i8 > %2
230
230
}
231
231
232
+ define i1 @scmp_eq_4 (i32 %x , i32 %y ) {
233
+ ; CHECK-LABEL: define i1 @scmp_eq_4(
234
+ ; CHECK-SAME: i32 [[X:%.*]], i32 [[Y:%.*]]) {
235
+ ; CHECK-NEXT: [[TMP1:%.*]] = call i8 @llvm.scmp.i8.i32(i32 [[X]], i32 [[Y]])
236
+ ; CHECK-NEXT: [[TMP2:%.*]] = icmp eq i8 [[TMP1]], 4
237
+ ; CHECK-NEXT: ret i1 [[TMP2]]
238
+ ;
239
+ %1 = call i8 @llvm.scmp (i32 %x , i32 %y )
240
+ %2 = icmp eq i8 %1 , 4
241
+ ret i1 %2
242
+ }
243
+
244
+ define i1 @ucmp_ne_negative_2 (i32 %x , i32 %y ) {
245
+ ; CHECK-LABEL: define i1 @ucmp_ne_negative_2(
246
+ ; CHECK-SAME: i32 [[X:%.*]], i32 [[Y:%.*]]) {
247
+ ; CHECK-NEXT: [[TMP1:%.*]] = call i8 @llvm.ucmp.i8.i32(i32 [[X]], i32 [[Y]])
248
+ ; CHECK-NEXT: [[TMP2:%.*]] = icmp ne i8 [[TMP1]], -2
249
+ ; CHECK-NEXT: ret i1 [[TMP2]]
250
+ ;
251
+ %1 = call i8 @llvm.ucmp (i32 %x , i32 %y )
252
+ %2 = icmp ne i8 %1 , -2
253
+ ret i1 %2
254
+ }
255
+
232
256
; Negative case: mismatched signedness of predicates
233
257
define i8 @scmp_known_ugt (i32 %x , i32 %y ) {
234
258
; CHECK-LABEL: define i8 @scmp_known_ugt(
You can’t perform that action at this time.
0 commit comments