; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 5 ; RUN: opt -passes=gvn -S < %s | FileCheck %s define void @test(ptr %p, i64 %v) { ; CHECK-LABEL: define void @test( ; CHECK-SAME: ptr [[P:%.*]], i64 [[V:%.*]]) { ; CHECK-NEXT: [[ENTRY:.*:]] ; CHECK-NEXT: [[TR:%.*]] = trunc nuw i64 [[V]] to i1 ; CHECK-NEXT: br i1 [[TR]], label %[[RET:.*]], label %[[STORE:.*]] ; CHECK: [[STORE]]: ; CHECK-NEXT: store i64 0, ptr [[P]], align 4 ; CHECK-NEXT: ret void ; CHECK: [[RET]]: ; CHECK-NEXT: store i64 1, ptr [[P]], align 4 ; CHECK-NEXT: ret void ; entry: %tr = trunc nuw i64 %v to i1 br i1 %tr, label %ret, label %store store: store i64 %v, ptr %p ret void ret: store i64 %v, ptr %p ret void }