Skip to content

Commit 7637bde

Browse files
committed
[RISCV] Pre-commit test
1 parent 497382e commit 7637bde

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

llvm/test/Transforms/InstCombine/and-xor-or.ll

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4274,6 +4274,20 @@ define i16 @or_zext_zext(i8 %x, i4 %y) {
42744274
ret i16 %r
42754275
}
42764276

4277+
define i16 @or_disjoint_zext_zext(i8 %x, i4 %y) {
4278+
; CHECK-LABEL: define {{[^@]+}}@or_disjoint_zext_zext
4279+
; CHECK-SAME: (i8 [[X:%.*]], i4 [[Y:%.*]]) {
4280+
; CHECK-NEXT: [[TMP1:%.*]] = zext i4 [[Y]] to i8
4281+
; CHECK-NEXT: [[TMP2:%.*]] = or i8 [[X]], [[TMP1]]
4282+
; CHECK-NEXT: [[R:%.*]] = zext i8 [[TMP2]] to i16
4283+
; CHECK-NEXT: ret i16 [[R]]
4284+
;
4285+
%zx = zext i8 %x to i16
4286+
%zy = zext i4 %y to i16
4287+
%r = or disjoint i16 %zy, %zx
4288+
ret i16 %r
4289+
}
4290+
42774291
define <2 x i16> @xor_zext_zext(<2 x i8> %x, <2 x i4> %y) {
42784292
; CHECK-LABEL: define {{[^@]+}}@xor_zext_zext
42794293
; CHECK-SAME: (<2 x i8> [[X:%.*]], <2 x i4> [[Y:%.*]]) {
@@ -4316,6 +4330,20 @@ define i16 @or_sext_sext(i8 %x, i4 %y) {
43164330
ret i16 %r
43174331
}
43184332

4333+
define i16 @or_disjoint_sext_sext(i8 %x, i4 %y) {
4334+
; CHECK-LABEL: define {{[^@]+}}@or_disjoint_sext_sext
4335+
; CHECK-SAME: (i8 [[X:%.*]], i4 [[Y:%.*]]) {
4336+
; CHECK-NEXT: [[TMP1:%.*]] = sext i4 [[Y]] to i8
4337+
; CHECK-NEXT: [[TMP2:%.*]] = or i8 [[X]], [[TMP1]]
4338+
; CHECK-NEXT: [[R:%.*]] = sext i8 [[TMP2]] to i16
4339+
; CHECK-NEXT: ret i16 [[R]]
4340+
;
4341+
%sx = sext i8 %x to i16
4342+
%sy = sext i4 %y to i16
4343+
%r = or disjoint i16 %sx, %sy
4344+
ret i16 %r
4345+
}
4346+
43194347
define i16 @xor_sext_sext(i8 %x, i4 %y) {
43204348
; CHECK-LABEL: define {{[^@]+}}@xor_sext_sext
43214349
; CHECK-SAME: (i8 [[X:%.*]], i4 [[Y:%.*]]) {

0 commit comments

Comments
 (0)