| # RUN: not llvm-xray stack %s 2>&1 | FileCheck --check-prefix HALT %s | |
| # RUN: llvm-xray stack -k %s 2>&1 | FileCheck --check-prefix KEEP-GOING-SUCCEEDS %s | |
| # RUN: llvm-xray stack -k %s | FileCheck --check-prefix KEEP-GOING %s | |
| --- | |
| header: | |
| version: 1 | |
| type: 0 | |
| constant-tsc: true | |
| nonstop-tsc: true | |
| cycle-frequency: 2601000000 | |
| records: | |
| - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-enter, tsc: 10001 } | |
| - { type: 1, func-id: 4, cpu: 1, thread: 111, kind: function-exit, tsc: 10301 } | |
| - { type: 0, func-id: 1, cpu: 1, thread: 111, kind: function-enter, tsc: 10401 } | |
| - { type: 0, func-id: 2, cpu: 1, thread: 111, kind: function-enter, tsc: 10501 } | |
| - { type: 0, func-id: 3, cpu: 1, thread: 111, kind: function-enter, tsc: 10601 } | |
| - { type: 1, func-id: 3, cpu: 1, thread: 111, kind: function-exit, tsc: 10701 } | |
| - { type: 1, func-id: 2, cpu: 1, thread: 111, kind: function-exit, tsc: 10751 } | |
| - { type: 1, func-id: 1, cpu: 1, thread: 111, kind: function-exit, tsc: 10775 } | |
| ... | |
| # HALT: llvm-xray: Found record {FuncId: "#4", ThreadId: "111", RecordType: "Fn Exit"} with no matching function entry | |
| #KEEP-GOING-SUCCEEDS: Found record {FuncId: "#4", ThreadId: "111", RecordType: "Fn Exit"} with no matching function entry | |
| #KEEP-GOING: Unique Stacks: 2 | |
| # Note the interesting case here that the stack { fn-1 } is a prefix of { fn-1, fn-2, fn-3 } but they | |
| # are still counted as unique stacks. |