1176bbcaeSNikita Popov; NOTE: Assertions have been autogenerated by utils/update_test_checks.py 2*f497a00dSBjorn Pettersson; RUN: opt < %s -passes=dse -stats -S 2>&1 | FileCheck %s 3176bbcaeSNikita Popov 4176bbcaeSNikita Popov; REQUIRES: asserts 5176bbcaeSNikita Popov 6176bbcaeSNikita Popovtarget datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" 7176bbcaeSNikita Popov 8176bbcaeSNikita Popov 9c603cefbSNikita Popovdefine void @test2(ptr noalias %P, ptr noalias %C, i1 %c) { 10176bbcaeSNikita Popov; CHECK-LABEL: @test2( 11176bbcaeSNikita Popov; CHECK-NEXT: br i1 [[C:%.*]], label [[BB1:%.*]], label [[BB2:%.*]] 12176bbcaeSNikita Popov; CHECK: bb1: 13c603cefbSNikita Popov; CHECK-NEXT: store i32 3, ptr [[C:%.*]] 14176bbcaeSNikita Popov; CHECK-NEXT: br label [[BB3:%.*]] 15176bbcaeSNikita Popov; CHECK: bb2: 16c603cefbSNikita Popov; CHECK-NEXT: store i32 4, ptr [[C]] 17176bbcaeSNikita Popov; CHECK-NEXT: br label [[BB3]] 18176bbcaeSNikita Popov; CHECK: bb3: 19c603cefbSNikita Popov; CHECK-NEXT: store i32 0, ptr [[P:%.*]] 20176bbcaeSNikita Popov; CHECK-NEXT: ret void 21176bbcaeSNikita Popov; 22c603cefbSNikita Popov store i32 1, ptr %P 23176bbcaeSNikita Popov br i1 %c, label %bb1, label %bb2 24176bbcaeSNikita Popovbb1: 25c603cefbSNikita Popov store i32 3, ptr %C 26176bbcaeSNikita Popov br label %bb3 27176bbcaeSNikita Popovbb2: 28c603cefbSNikita Popov store i32 4, ptr %C 29176bbcaeSNikita Popov br label %bb3 30176bbcaeSNikita Popovbb3: 31c603cefbSNikita Popov store i32 0, ptr %P 32176bbcaeSNikita Popov ret void 33176bbcaeSNikita Popov} 34176bbcaeSNikita Popov 35176bbcaeSNikita Popov; CHECK: 1 dse - Number of stores deleted 36176bbcaeSNikita Popov; CHECK: 3 dse - Number of stores remaining after DSE 37