1*0676acb6SBjorn Pettersson; RUN: opt -S < %s -passes=gvn-sink | FileCheck %s 230cab5d6SCameron McInally 330cab5d6SCameron McInally; CHECK-LABEL: sink 4ab4b2364SCameron McInally; CHECK-NOT: fneg 530cab5d6SCameron McInally; CHECK: = phi 6ab4b2364SCameron McInally; CHECK: fneg 730cab5d6SCameron McInallydefine float @sink(float %a, float %b, i1 %cmp) { 830cab5d6SCameron McInallyentry: 930cab5d6SCameron McInally br i1 %cmp, label %if.then, label %if.else 1030cab5d6SCameron McInally 1130cab5d6SCameron McInallyif.then: 1230cab5d6SCameron McInally %sub = fsub float %a, %b 1330cab5d6SCameron McInally %neg0 = fneg float %sub 1430cab5d6SCameron McInally br label %if.end 1530cab5d6SCameron McInally 1630cab5d6SCameron McInallyif.else: 1730cab5d6SCameron McInally %add = fadd float %a, %b 1830cab5d6SCameron McInally %neg1 = fneg float %add 1930cab5d6SCameron McInally br label %if.end 2030cab5d6SCameron McInally 2130cab5d6SCameron McInallyif.end: 2230cab5d6SCameron McInally %phi = phi float [ %neg0, %if.then ], [ %neg1, %if.else ] 2330cab5d6SCameron McInally ret float %phi 2430cab5d6SCameron McInally} 25