1# RUN: yaml2obj %S/Inputs/stack-cfi-parsing.yaml > %t 2# RUN: %lldb -c %t -o "target symbols add %S/Inputs/stack-cfi-parsing.syms" \ 3# RUN: -s %s -b | FileCheck %s 4 5image show-unwind -n func0 6# CHECK-LABEL: image show-unwind -n func0 7# CHECK: Asynchronous (not restricted to call-sites) UnwindPlan is 'breakpad STACK CFI' 8# CHECK: Synchronous (restricted to call-sites) UnwindPlan is 'breakpad STACK CFI' 9# CHECK: Symbol file UnwindPlan: 10# CHECK-NEXT: This UnwindPlan originally sourced from breakpad STACK CFI 11# CHECK-NEXT: This UnwindPlan is sourced from the compiler: yes. 12# CHECK-NEXT: This UnwindPlan is valid at all instruction locations: no. 13# CHECK-NEXT: Address range of this UnwindPlan: [stack-cfi-parsing.out..module_image + 0-0x0000000000000002) 14# CHECK-NEXT: row[0]: 0: CFA=DW_OP_breg7 +0 => rbp=DW_OP_breg7 +0 rip=DW_OP_pick 0x0 15# CHECK-NEXT: row[1]: 1: CFA=DW_OP_breg7 +0 => rbx=DW_OP_breg2 +0 rbp=DW_OP_breg0 +0 rip=DW_OP_pick 0x0 16 17# The following plans are all (syntactically) invalid for various reasons. 18# Processing those should not cause a crash. 19 20image show-unwind -n func2 21# CHECK-LABEL: image show-unwind -n func2 22# CHECK-NOT: Symbol file 23 24image show-unwind -n func3 25# CHECK-LABEL: image show-unwind -n func3 26# CHECK-NOT: Symbol file 27 28image show-unwind -n func4 29# CHECK-LABEL: image show-unwind -n func4 30# CHECK-NOT: Symbol file 31 32image show-unwind -n func5 33# CHECK-LABEL: image show-unwind -n func5 34# CHECK-NOT: Symbol file 35 36image show-unwind -n func6 37# CHECK-LABEL: image show-unwind -n func6 38# CHECK-NOT: Symbol file 39 40image show-unwind -n func7 41# CHECK-LABEL: image show-unwind -n func7 42# CHECK-NOT: Symbol file 43 44# Finally, try an unwind plan with just a single row 45image show-unwind -n func9 46# CHECK-LABEL: image show-unwind -n func9 47# CHECK: Asynchronous (not restricted to call-sites) UnwindPlan is 'breakpad STACK CFI' 48# CHECK: Synchronous (restricted to call-sites) UnwindPlan is 'breakpad STACK CFI' 49# CHECK: Symbol file UnwindPlan: 50# CHECK: Address range of this UnwindPlan: [stack-cfi-parsing.out..module_image + 9-0x000000000000000a) 51# CHECK: row[0]: 0: CFA=DW_OP_breg6 +0 => rip=DW_OP_breg0 +0 52 53