[clang] Implement lifetime analysis for lifetime_capture_by(X) (#115921)
[llvm-project.git] / clang / test / Frontend / embed-bitcode-noopt.ll
blob61016b4367e7816fc438220eeabfb0866794bfcb
1 ; Ensure calling bypassing the driver with -fembed-bitcode embeds bitcode pre-
2 ; optimizations
3 ; REQUIRES: x86-registered-target
5 ; RUN: %clang_cc1 -O2 -triple x86_64-unknown-linux-gnu -emit-obj %s -o %t.o -fembed-bitcode=all
6 ; RUN: llvm-objcopy --dump-section=.llvmbc=%t.bc %t.o /dev/null
8 ; Also check that the .llvmcmd section captures the optimization options.
9 ; RUN: llvm-dis %t.bc -o - | FileCheck %s --check-prefix=CHECK-BC
10 ; RUN: llvm-objcopy --dump-section=.llvmcmd=- %t.o /dev/null | FileCheck %s --check-prefix=CHECK-CMD
12 ; CHECK-BC-LABEL: define void @bar() #0 {
13 ; CHECK-BC-NEXT:  ret void  
14 ; CHECK-BC-NEXT: }
15 ; CHECK-BC-LABEL: define void @foo() {
16 ; CHECK-BC-NEXT: call void @bar()
17 ; CHECK-BC-NEXT: ret void
18 ; CHECK-BC-NEXT: }
19 ; CHECK-BC-LABEL: attributes #0 = { alwaysinline }
20 ; CHECK-CMD: -O2
22 define void @bar() #0 {
23     ret void
26 define void @foo() {
27   call void @bar()
28   ret void
31 attributes #0 = { alwaysinline }