125 lines · plain
1@ RUN: llvm-mc -triple=thumbv7k-apple-watchos2.0.0 -emit-compact-unwind-non-canonical=true -filetype=obj -o %t < %s && llvm-objdump --unwind-info %t | FileCheck %s2 3@ CHECK: Contents of __compact_unwind section:4 5 .syntax unified6 .align 27 .code 168 9@ CHECK-LABEL: start: {{.*}} _test_r4_r5_r610@ CHECK: compact encoding: 0x0100000711 .thumb_func _test_r4_r5_r612_test_r4_r5_r6:13 .cfi_startproc14 push {r4, r5, r6, r7, lr}15 add r7, sp, #1216 sub sp, #1617 .cfi_def_cfa r7, 818 .cfi_offset lr, -419 .cfi_offset r7, -820 .cfi_offset r6, -1221 .cfi_offset r5, -1622 .cfi_offset r4, -2023 .cfi_endproc24 25 26@ CHECK-LABEL: start: {{.*}} _test_r4_r5_r10_r1127@ CHECK: compact encoding: 0x0100006328 .thumb_func _test_r4_r5_r10_r1129_test_r4_r5_r10_r11:30 .cfi_startproc31 push {r4, r5, r7, lr}32 add r7, sp, #833 .cfi_def_cfa r7, 834 .cfi_offset lr, -435 .cfi_offset r7, -836 .cfi_offset r5, -1237 .cfi_offset r4, -1638 push.w {r10, r11}39 .cfi_offset r11, -2040 .cfi_offset r10, -2441 .cfi_endproc42 43 44@ CHECK-LABEL: start: {{.*}} _test_d845@ CHECK: compact encoding: 0x0200000046 .thumb_func _test_d847_test_d8:48 .cfi_startproc49 push {r7, lr}50 mov r7, sp51 .cfi_def_cfa r7, 852 .cfi_offset lr, -453 .cfi_offset r7, -854 vpush {d8}55 .cfi_offset d8, -1656 .cfi_endproc57 58 59@ CHECK-LABEL: start: {{.*}} _test_d8_d10_d12_d1460@ CHECK: compact encoding: 0x0200030061 .thumb_func _test_d8_d10_d12_d1462_test_d8_d10_d12_d14:63 .cfi_startproc64 push {r7, lr}65 mov r7, sp66 .cfi_def_cfa r7, 867 .cfi_offset lr, -468 .cfi_offset r7, -869 vpush {d14}70 vpush {d12}71 vpush {d10}72 vpush {d8}73 .cfi_offset d14, -1674 .cfi_offset d12, -2475 .cfi_offset d10, -3276 .cfi_offset d8, -4077 .cfi_endproc78 79@ CHECK-LABEL: start: {{.*}} _test_varargs80@ CHECK: compact encoding: 0x01c0000181 .thumb_func _test_varargs82_test_varargs:83 .cfi_startproc84 sub sp, #1285 push {r4, r7, lr}86 add r7, sp, #487 .cfi_def_cfa r7, 2088 .cfi_offset lr, -1689 .cfi_offset r7, -2090 .cfi_offset r4, -2491 add.w r9, r7, #892 mov r4, r093 stm.w r9, {r1, r2, r3}94 .cfi_endproc95 96@ CHECK-LABEL: start: {{.*}} _test_missing_lr97@ CHECK: compact encoding: 0x0400000098 .thumb_func _test_missing_lr99_test_missing_lr:100 .cfi_startproc101 push {r7}102 .cfi_def_cfa r7, 4103 .cfi_offset r7, -4104 pop {r7}105 bx lr106 .cfi_endproc107 108@ CHECK-LABEL: start: {{.*}} _test_swapped_offsets109@ CHECK: compact encoding: 0x04000000110 .thumb_func _test_swapped_offsets111_test_swapped_offsets:112 .cfi_startproc113 push {r7, lr}114 push {r10}115 push {r4}116 .cfi_def_cfa r7, 8117 .cfi_offset lr, -4118 .cfi_offset r7, -8119 .cfi_offset r10, -12120 .cfi_offset r4, -16121 pop {r4}122 pop {r10}123 pop {r7, pc}124 .cfi_endproc125