Skip to content

Commit b00d3bf

Browse files
committed
tests
1 parent 32d7582 commit b00d3bf

File tree

1 file changed

+18
-5
lines changed
  • llvm/test/Transforms/InstCombine

1 file changed

+18
-5
lines changed

llvm/test/Transforms/InstCombine/cttz.ll

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -313,6 +313,19 @@ define i8 @fold_ctz_log2(i8 %x) {
313313
ret i8 %r
314314
}
315315

316+
define i9 @fold_ctz_log2_i9_okay(i9 %x) {
317+
; CHECK-LABEL: @fold_ctz_log2_i9_okay(
318+
; CHECK-NEXT: [[P2:%.*]] = shl nuw i9 1, [[X:%.*]]
319+
; CHECK-NEXT: [[V:%.*]] = call i9 @llvm.umin.i9(i9 [[P2]], i9 32)
320+
; CHECK-NEXT: [[R:%.*]] = call range(i9 0, 10) i9 @llvm.cttz.i9(i9 [[V]], i1 true)
321+
; CHECK-NEXT: ret i9 [[R]]
322+
;
323+
%p2 = shl i9 1, %x
324+
%v = call i9 @llvm.umin(i9 %p2, i9 32)
325+
%r = call i9 @llvm.cttz(i9 %v, i1 false)
326+
ret i9 %r
327+
}
328+
316329
define i8 @fold_ctz_log2_maybe_z(i8 %x, i8 %y, i1 %c) {
317330
; CHECK-LABEL: @fold_ctz_log2_maybe_z(
318331
; CHECK-NEXT: [[V:%.*]] = shl i8 2, [[V_V:%.*]]
@@ -356,8 +369,8 @@ define i8 @fold_clz_log2(i8 %x) {
356369
ret i8 %r
357370
}
358371

359-
define i8 @fold_clz_log2_multiuse(i8 %x) {
360-
; CHECK-LABEL: @fold_clz_log2_multiuse(
372+
define i8 @fold_clz_log2_multiuse_fail(i8 %x) {
373+
; CHECK-LABEL: @fold_clz_log2_multiuse_fail(
361374
; CHECK-NEXT: [[V:%.*]] = shl i8 2, [[X:%.*]]
362375
; CHECK-NEXT: call void @use.i8(i8 [[V]])
363376
; CHECK-NEXT: [[R:%.*]] = call range(i8 0, 9) i8 @llvm.ctlz.i8(i8 [[V]], i1 true)
@@ -370,15 +383,15 @@ define i8 @fold_clz_log2_multiuse(i8 %x) {
370383
}
371384

372385

373-
define i9 @fold_clz_log2_i9(i9 %x) {
374-
; CHECK-LABEL: @fold_clz_log2_i9(
386+
define i9 @fold_clz_log2_i9_fail(i9 %x) {
387+
; CHECK-LABEL: @fold_clz_log2_i9_fail(
375388
; CHECK-NEXT: [[P2:%.*]] = shl nuw i9 1, [[X:%.*]]
376389
; CHECK-NEXT: [[V:%.*]] = call i9 @llvm.umin.i9(i9 [[P2]], i9 32)
377390
; CHECK-NEXT: [[R:%.*]] = call range(i9 3, 10) i9 @llvm.ctlz.i9(i9 [[V]], i1 true)
378391
; CHECK-NEXT: ret i9 [[R]]
379392
;
380393
%p2 = shl i9 1, %x
381394
%v = call i9 @llvm.umin(i9 %p2, i9 32)
382-
%r = call i9 @llvm.ctlz(i9 %v, i1 false)
395+
%r = call i9 @llvm.ctlz(i9 %v, i1 true)
383396
ret i9 %r
384397
}

0 commit comments

Comments
 (0)