1 // RUN: %clang -S -emit-llvm -o - -O0 -fno-experimental-new-pass-manager %s | FileCheck %s -check-prefix=O0
2 // RUN: %clang -S -emit-llvm -o - -O1 -fno-experimental-new-pass-manager %s | FileCheck %s -check-prefix=O1
3 // RUN: %clang -S -emit-llvm -o - -O2 -fno-experimental-new-pass-manager %s | FileCheck %s -check-prefix=O2
4 // RUN: %clang -S -emit-llvm -o - -O3 -fno-experimental-new-pass-manager %s | FileCheck %s -check-prefix=O3
5 // RUN: %clang -S -emit-llvm -o - -O0 -fexperimental-new-pass-manager %s | FileCheck %s -check-prefix=O0
6 
7 extern void use(char *a);
8 
9 __attribute__((always_inline)) void helper_no_markers() {
10   char a;
11   use(&a);
12 }
13 
14 void lifetime_test() {
15 // O0: lifetime_test
16 // O1: lifetime_test
17 // O2: lifetime_test
18 // O3: lifetime_test
19 // O0-NOT: @llvm.lifetime.start
20 // O1: @llvm.lifetime.start
21 // O2: @llvm.lifetime.start
22 // O3: @llvm.lifetime.start
23   helper_no_markers();
24 }
25