blob: 4cd2f9d350c702792e3551d373680773b6142d8f [file] [log] [blame]
Karl Schimpf97501832014-09-16 13:35:32 -07001; Test parsing unreachable instruction.
2
Karl Schimpf2a5324a2014-09-25 09:37:49 -07003; RUN: %p2i -i %s --insts | FileCheck %s
Karl Schimpf97501832014-09-16 13:35:32 -07004
5define internal i32 @divide(i32 %num, i32 %den) {
6entry:
7 %cmp = icmp ne i32 %den, 0
8 br i1 %cmp, label %return, label %abort
9
10abort: ; preds = %entry
11 unreachable
12
13return: ; preds = %entry
14 %div = sdiv i32 %num, %den
15 ret i32 %div
16}
17
18; CHECK: define internal i32 @divide(i32 %num, i32 %den) {
19; CHECK-NEXT: entry:
20; CHECK-NEXT: %cmp = icmp ne i32 %den, 0
21; CHECK-NEXT: br i1 %cmp, label %return, label %abort
22; CHECK-NEXT: abort:
23; CHECK-NEXT: unreachable
24; CHECK-NEXT: return:
25; CHECK-NEXT: %div = sdiv i32 %num, %den
26; CHECK-NEXT: ret i32 %div
27; CHECK-NEXT: }