; RUN: opt < %s -function-attrs -S | FileCheck %s ; RUN: opt < %s -passes=function-attrs -S | FileCheck %s ; CHECK: define i32 @test1(i32 %p, i32 %q) define i32 @test1(i32 %p, i32 %q) { entry: %cmp = icmp sgt i32 %p, %q br i1 %cmp, label %cond.end, label %lor.lhs.false lor.lhs.false: ; preds = %entry %tobool = icmp ne i32 %p, 0 %tobool1 = icmp ne i32 %q, 0 %or.cond = and i1 %tobool, %tobool1 %p.q = select i1 %or.cond, i32 %p, i32 %q ret i32 %p.q cond.end: ; preds = %entry ret i32 %p } ; CHECK: define i32 @test2(i32 %p1, i32 returned %p2) define i32 @test2(i32 %p1, i32 returned %p2) { %_tmp4 = icmp eq i32 %p1, %p2 br i1 %_tmp4, label %bb2, label %bb1 bb2: ; preds = %0 ret i32 %p1 bb1: ; preds = %bb1, %0 br label %bb1 }