• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 
f0()7 int f0() {
8   return 0;
9   unreachable();
10 }
11 
f1(int i)12 int f1(int i) {
13   goto L0;
14   int a = unreachable();
15  L0:
16   return 0;
17 }
18 
f2(int i)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 
f3(int i)29 int f3(int i) {
30   if (i) {
31     return 0;
32   } else {
33     abort();
34   }
35   unreachable();
36   return 3;
37 }
38