brintos

brintos / llvm-project-archived public Read only

0
0
Text · 909 B · 468a23f Raw
37 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py2; RUN: opt -passes=constraint-elimination -S %s | FileCheck %s3 4declare void @use(i1)5 6define void @test(ptr %m, ptr %ptr) {7; CHECK-LABEL: @test(8; CHECK-NEXT:  entry:9; CHECK-NEXT:    [[CMP_1:%.*]] = icmp ult ptr [[M:%.*]], [[PTR:%.*]]10; CHECK-NEXT:    br i1 [[CMP_1]], label [[BB_1:%.*]], label [[BB_2:%.*]]11; CHECK:       bb.1:12; CHECK-NEXT:    call void @use(i1 false)13; CHECK-NEXT:    ret void14; CHECK:       bb.2:15; CHECK-NEXT:    br label [[BB_2_NEXT:%.*]]16; CHECK:       bb.2.next:17; CHECK-NEXT:    call void @use(i1 true)18; CHECK-NEXT:    ret void19;20entry:21  %cmp.1 = icmp ult ptr %m, %ptr22  br i1 %cmp.1, label %bb.1, label %bb.223 24bb.1:25  %cmp.2 = icmp uge ptr %m, %ptr26  call void @use(i1 %cmp.2)27  ret void28 29bb.2:30  br label %bb.2.next31 32bb.2.next:33  %cmp.3 = icmp uge ptr %m, %ptr34  call void @use(i1 %cmp.3)35  ret void36}37