brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.0 KiB · 7a165e6 Raw
28 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py2; RUN: opt < %s -passes='loop(indvars),adce,simplifycfg' -S | FileCheck %s3; PR15984 5define i32 @f(i32 %a, i32 %b, i32 %x, i32 %y) {6; CHECK-LABEL: @f(7; CHECK-NEXT:  entry:8; CHECK-NEXT:    [[TMP3:%.*]] = icmp eq i32 [[A:%.*]], [[B:%.*]]9; CHECK-NEXT:    [[TMP0:%.*]] = add i32 [[X:%.*]], 110; CHECK-NEXT:    [[SMAX:%.*]] = call i32 @llvm.smax.i32(i32 [[Y:%.*]], i32 [[TMP0]])11; CHECK-NEXT:    [[X_ADDR_1:%.*]] = select i1 [[TMP3]], i32 [[X]], i32 [[SMAX]]12; CHECK-NEXT:    ret i32 [[X_ADDR_1]]13;14entry:15  %tmp3 = icmp eq i32 %a, %b		; <i1> [#uses=1]16  br i1 %tmp3, label %return, label %bb17 18bb:		; preds = %bb, %entry19  %x_addr.0 = phi i32 [ %tmp6, %bb ], [ %x, %entry ]		; <i32> [#uses=1]20  %tmp6 = add i32 %x_addr.0, 1		; <i32> [#uses=3]21  %tmp9 = icmp slt i32 %tmp6, %y		; <i1> [#uses=1]22  br i1 %tmp9, label %bb, label %return23 24return:		; preds = %bb, %entry25  %x_addr.1 = phi i32 [ %x, %entry ], [ %tmp6, %bb ]		; <i32> [#uses=1]26  ret i32 %x_addr.127}28