1volatile int x;
2
3void __attribute__((noinline)) sink() {
4 x++; //% self.filecheck("bt", "main.cpp")
5 // CHECK-NOT: func{{[23]}}
6}
7
8void func2();
9
10void __attribute__((noinline)) func1() {
11 if (x < 1)
12 func2();
13 else
14 sink();
15}
16
17void __attribute__((noinline)) func2() {
18 if (x < 1)
19 sink();
20 else
21 func1();
22}
23
24int main() {
25 // Tail recursion creates ambiguous execution histories.
26 x = 0;
27 func1();
28 return 0;
29}
30

source code of lldb/test/API/functionalities/tail_call_frames/ambiguous_tail_call_seq2/main.cpp