]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/CodeGen/unreachable.c
Vendor import of clang release_38 branch r258549:
[FreeBSD/FreeBSD.git] / test / CodeGen / unreachable.c
1 // RUN: %clang_cc1 -emit-llvm -o - %s | FileCheck %s
2 // CHECK-NOT: @unreachable
3
4 extern void abort() __attribute__((noreturn));
5 extern int unreachable();
6
7 int f0() {
8   return 0;
9   unreachable();
10 }
11
12 int f1(int i) {
13   goto L0;
14   int a = unreachable();
15  L0:
16   return 0;
17 }
18
19 int f2(int i) {
20   goto L0;
21   unreachable();
22   int a;
23   unreachable();
24  L0:
25   a = i + 1;
26   return a;
27 }
28
29 int f3(int i) {
30   if (i) {
31     return 0;
32   } else {
33     abort();
34   }
35   unreachable();
36   return 3;
37 }