brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · 9a0444a Raw
35 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 22; RUN: opt -S -passes=licm,simple-loop-unswitch,licm < %s | FileCheck %s3 4declare void @llvm.experimental.guard(i1, ...)5 6define void @test(i1 %arg) {7; CHECK-LABEL: define void @test8; CHECK-SAME: (i1 [[ARG:%.*]]) {9; CHECK-NEXT:  entry:10; CHECK-NEXT:    [[TMP0:%.*]] = icmp ult i32 0, 40011; CHECK-NEXT:    call void (i1, ...) @llvm.experimental.guard(i1 [[TMP0]], i32 9) [ "deopt"() ]12; CHECK-NEXT:    br i1 [[ARG]], label [[ENTRY_SPLIT:%.*]], label [[HEADER_SPLIT:%.*]]13; CHECK:       entry.split:14; CHECK-NEXT:    br label [[HEADER:%.*]]15; CHECK:       header.loopexit:16; CHECK-NEXT:    br label [[HEADER]]17; CHECK:       header:18; CHECK-NEXT:    br label [[LOOP:%.*]]19; CHECK:       header.split:20; CHECK-NEXT:    br label [[LOOP1:%.*]]21; CHECK:       loop:22; CHECK-NEXT:    br label [[LOOP1]]23;24entry:25  br label %header26 27header:28  br label %loop29 30loop:31  %0 = icmp ult i32 0, 40032  call void (i1, ...) @llvm.experimental.guard(i1 %0, i32 9) [ "deopt"() ]33  br i1 %arg, label %header, label %loop34}35