// clang-format off | |
// REQUIRES: system-windows | |
// RUN: %build -o %t.exe -- %s | |
// RUN: env LLDB_USE_NATIVE_PDB_READER=1 %lldb -f %t.exe -s \ | |
// RUN: %p/Inputs/inline_sites_live.lldbinit 2>&1 | FileCheck %s | |
void use(int) {} | |
void __attribute__((always_inline)) bar(int param) { | |
use(param); // BP_bar | |
} | |
void __attribute__((always_inline)) foo(int param) { | |
int local = param+1; | |
bar(local); | |
use(param); | |
use(local); // BP_foo | |
} | |
int main(int argc, char** argv) { | |
foo(argc); | |
} | |
// CHECK: * thread #1, stop reason = breakpoint 1 | |
// CHECK-NEXT: frame #0: {{.*}}`main [inlined] bar(param=2) | |
// CHECK: (lldb) expression param | |
// CHECK-NEXT: (int) $0 = 2 | |
// CHECK: * thread #1, stop reason = breakpoint 2 | |
// CHECK-NEXT: frame #0: {{.*}}`main [inlined] foo(param=1) | |
// CHECK: (lldb) expression param | |
// CHECK-NEXT: (int) $1 = 1 | |
// CHECK-NEXT: (lldb) expression local | |
// CHECK-NEXT: (int) $2 = 2 |