File tree 1 file changed +18
-0
lines changed
llvm/test/Transforms/InstCombine 1 file changed +18
-0
lines changed Original file line number Diff line number Diff line change @@ -977,6 +977,24 @@ define i32 @range_15_31_top27(i32 %x) {
977
977
ret i32 %res
978
978
}
979
979
980
+ define i1 @not_cond_use (i8 %x ) {
981
+ ; CHECK-LABEL: @not_cond_use(
982
+ ; CHECK-NEXT: [[CMP:%.*]] = icmp eq i8 [[X:%.*]], 0
983
+ ; CHECK-NEXT: tail call void @use(i1 [[CMP]])
984
+ ; CHECK-NEXT: [[NOT:%.*]] = xor i1 [[CMP]], true
985
+ ; CHECK-NEXT: tail call void @llvm.assume(i1 [[NOT]])
986
+ ; CHECK-NEXT: [[RVAL:%.*]] = icmp eq i8 [[X]], 0
987
+ ; CHECK-NEXT: ret i1 [[RVAL]]
988
+ ;
989
+ %cmp = icmp eq i8 %x , 0
990
+ tail call void @use (i1 %cmp )
991
+ %not = xor i1 %cmp , true
992
+ tail call void @llvm.assume (i1 %not )
993
+ %rval = icmp eq i8 %x , 0
994
+ ret i1 %rval
995
+ }
996
+
997
+ declare void @use (i1 )
980
998
declare void @llvm.dbg.value (metadata , metadata , metadata )
981
999
982
1000
!llvm.dbg.cu = !{!0 }
You can’t perform that action at this time.
0 commit comments