Reverts llvm/llvm-project#137408 This change broke `lldb/test/Shell/Unwind/split-machine-functions.test`. The test binary has a symbol named `_Z3foov.cold` and the test expects the backtrace to print the name of the cold part of the function like this: ``` # SPLIT: frame #1: {{.*}}`foo() (.cold) + ``` but now it gets ``` frame #1: 0x000055555555514f split-machine-functions.test.tmp`foo() + 12 ```
45 lines
927 B
Plaintext
45 lines
927 B
Plaintext
# XFAIL: target-windows
|
|
|
|
# Test the ${function.formatted-arguments} frame-format variable.
|
|
|
|
# RUN: split-file %s %t
|
|
# RUN: %clang_host -g -gdwarf %t/main.cpp -o %t.out
|
|
# RUN: %lldb -x -b -s %t/commands.input %t.out -o exit 2>&1 \
|
|
# RUN: | FileCheck %s
|
|
|
|
#--- main.cpp
|
|
struct Foo {
|
|
void func() {}
|
|
};
|
|
|
|
void bar() {
|
|
Foo{}.func();
|
|
}
|
|
|
|
void foo(int, int x) {
|
|
bar();
|
|
}
|
|
|
|
void myFunc(char const * str,
|
|
void (*fptr)(int, int)) {
|
|
fptr(5, 10);
|
|
}
|
|
|
|
int main(int argc, char const *argv[]) {
|
|
myFunc("hello", &foo);
|
|
return 0;
|
|
}
|
|
|
|
#--- commands.input
|
|
settings set -f frame-format "custom-frame '${function.formatted-arguments}'\n"
|
|
break set -n func
|
|
|
|
run
|
|
bt
|
|
|
|
# CHECK: custom-frame '(this={{.*}})'
|
|
# CHECK: custom-frame '()'
|
|
# CHECK: custom-frame '({{.*}}=5, x=10)'
|
|
# CHECK: custom-frame '(str="hello", fptr=({{.*}}.out`{{.*}}foo(int,{{.*}}int) at main.cpp:{{[0-9]+}}))'
|
|
# CHECK: custom-frame '(argc=1, argv={{.*}})'
|