• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// This test ensures that, if the section containing a function has a suffix
2// (e.g. .text$foo), its unwind info section also has a suffix (.xdata$foo).
3// RUN: llvm-mc -filetype=obj -triple x86_64-pc-win32 %s | coff-dump.py | FileCheck %s
4// XFAIL: *
5
6// CHECK:      Name                 = .xdata$foo
7// CHECK-NEXT: VirtualSize
8// CHECK-NEXT: VirtualAddress
9// CHECK-NEXT: SizeOfRawData        = 8
10// CHECK-NEXT: PointerToRawData
11// CHECK-NEXT: PointerToRelocations
12// CHECK-NEXT: PointerToLineNumbers
13// CHECK-NEXT: NumberOfRelocations  = 0
14// CHECK-NEXT: NumberOfLineNumbers  = 0
15// CHECK-NEXT: Charateristics
16// CHECK-NEXT:   IMAGE_SCN_CNT_INITIALIZED_DATA
17// CHECK-NEXT:   IMAGE_SCN_ALIGN_4BYTES
18// CHECK-NEXT:   IMAGE_SCN_MEM_READ
19// CHECK-NEXT:   IMAGE_SCN_MEM_WRITE
20// CHECK-NEXT: SectionData
21// CHECK-NEXT:   01 05 02 00 05 50 04 02
22
23    .section .text$foo,"x"
24    .globl foo
25    .def foo; .scl 2; .type 32; .endef
26    .seh_proc foo
27foo:
28    subq $8, %rsp
29    .seh_stackalloc 8
30    pushq %rbp
31    .seh_pushreg %rbp
32    .seh_endprologue
33    popq %rbp
34    addq $8, %rsp
35    ret
36    .seh_endproc
37
38