1 // This test checks that the SEH directives emit the correct unwind data.
3 // RUN
: llvm-mc
-triple aarch64-pc-win32
-filetype
=obj
%s | llvm-readobj
-S
-r | FileCheck
%s
8 // CHECK
: RelocationCount
: 0
9 // CHECK
: Characteristics
[
10 // CHECK-NEXT
: ALIGN_4BYTES
11 // CHECK-NEXT
: CNT_CODE
12 // CHECK-NEXT
: MEM_EXECUTE
13 // CHECK-NEXT
: MEM_READ
17 // CHECK
: Name
: .xdata
18 // CHECK
: RawDataSize
: 24
19 // CHECK
: RelocationCount
: 1
20 // CHECK
: Characteristics
[
21 // CHECK-NEXT
: ALIGN_4BYTES
22 // CHECK-NEXT
: CNT_INITIALIZED_DATA
23 // CHECK-NEXT
: MEM_READ
27 // CHECK
: Name
: .pdata
28 // CHECK
: RelocationCount
: 6
29 // CHECK
: Characteristics
[
30 // CHECK-NEXT
: ALIGN_4BYTES
31 // CHECK-NEXT
: CNT_INITIALIZED_DATA
32 // CHECK-NEXT
: MEM_READ
37 // CHECK-NEXT
: Relocations
[
38 // CHECK-NEXT
: Section
(4) .xdata {
39 // CHECK-NEXT
: 0x8 IMAGE_REL_ARM64_ADDR32NB __C_specific_handler
41 // CHECK-NEXT
: Section
(5) .pdata {
42 // CHECK-NEXT
: 0x0 IMAGE_REL_ARM64_ADDR32NB func
43 // CHECK-NEXT
: 0x4 IMAGE_REL_ARM64_ADDR32NB
.xdata
44 // CHECK-NEXT
: 0x8 IMAGE_REL_ARM64_ADDR32NB func
45 // CHECK-NEXT
: 0xC IMAGE_REL_ARM64_ADDR32NB
.xdata
46 // CHECK-NEXT
: 0x10 IMAGE_REL_ARM64_ADDR32NB smallFunc
47 // CHECK-NEXT
: 0x14 IMAGE_REL_ARM64_ADDR32NB
.xdata
64 .seh_handler __C_specific_handler, @except
75 // Test emission of small functions.