brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.0 KiB · 27e599e Raw
68 lines · plain
1; RUN: llvm-reduce -abort-on-invalid-reduction --delta-passes=basic-blocks --test FileCheck --test-arg --check-prefix=CHECK-INTERESTINGNESS0 --test-arg %s --test-arg --input-file %s -o %t.02; RUN: FileCheck -check-prefix=RESULT0 %s < %t.03 4; RUN: llvm-reduce -abort-on-invalid-reduction --delta-passes=basic-blocks --test FileCheck --test-arg --check-prefix=CHECK-INTERESTINGNESS1 --test-arg %s --test-arg --input-file %s -o %t.15; RUN: FileCheck -check-prefix=RESULT1 %s < %t.16 7; CHECK-INTERESTINGNESS0: store i32 1,8; CHECK-INTERESTINGNESS0: store i32 2,9 10; CHECK-INTERESTINGNESS1: store i32 2,11 12 13; RESULT0: bb:14; RESULT0-NEXT: %bb.load = load i32, ptr null, align 415; RESULT0-NEXT: store i32 0, ptr null, align 416; RESULT0-NEXT: br i1 %arg0, label %bb1, label %bb217 18; RESULT0: bb1:19; RESULT0: %bb1.phi = phi i32 [ %bb.load, %bb ], [ %bb2.phi, %bb2 ], [ %bb2.phi, %bb2 ]20; RESULT0-NEXT: store i32 1, ptr null, align 421; RESULT0-NEXT: ret void22 23; RESULT0: bb2: ; preds = %bb24; RESULT0-NEXT: %bb2.phi = phi i32 [ %bb.load, %bb ]25; RESULT0-NEXT: store i32 2, ptr null, align 426; RESULT0-NEXT: switch i32 %bb2.phi, label %bb1 [27; RESULT0-NEXT: i32 0, label %bb128; RESULT0-NEXT: ]29 30 31; RESULT1: bb:32; RESULT1-NEXT: %bb.load = load i32, ptr null, align 433; RESULT1-NEXT: store i32 0, ptr null, align 434; RESULT1-NEXT: br label %bb235 36; RESULT1: bb2:37; RESULT1-NEXT: %bb2.phi = phi i32 [ %bb.load, %bb ]38; RESULT1-NEXT: store i32 2, ptr null, align 439; RESULT1-NEXT: ret void40define void @main(i1 %arg0) {41bb:42  %bb.load = load i32, ptr null43  store i32 0, ptr null44  br i1 %arg0, label %bb1, label %bb245 46bb1:47  %bb1.phi = phi i32 [%bb.load, %bb], [9, %bb3], [%bb2.phi, %bb2]48  store i32 1, ptr null49  ret void50 51bb2:52  %bb2.phi = phi i32 [%bb.load, %bb], [%bb3.load, %bb3]53  store i32 2, ptr null54  switch i32 %bb2.phi, label %bb3 [55    i32 0, label %bb156    i32 1, label %bb457  ]58 59bb3:60  %bb3.load = load i32, ptr null61  store i32 3, ptr null62  br i1 true, label %bb2, label %bb163 64bb4:65  store i32 4, ptr null66  ret void67}68