llvm.org GIT mirror llvm / 126a58a
[llvm-readobj] - Inline a few yaml inputs into test cases. There are some test that are splitted into main part + input yaml for no visible reason. This patch inines the yaml part for the 3 test cases I found. Differential revision: https://reviews.llvm.org/D63644 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@364049 91177308-0d34-0410-b5e6-96231b3b80d8 George Rimar 11 months ago
6 changed file(s) with 293 addition(s) and 294 deletion(s). Raw diff Collapse all Expand all
+0
-46
test/tools/llvm-readobj/Inputs/dwarf-exprs.exe-x86-64.yaml less more
None --- !ELF
1 FileHeader:
2 Class: ELFCLASS64
3 Data: ELFDATA2LSB
4 Type: ET_EXEC
5 Machine: EM_X86_64
6 Entry: 0x0000000000400000
7 Sections:
8 - Name: .text
9 Type: SHT_PROGBITS
10 Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
11 Address: 0x0000000000400000
12 AddressAlign: 16
13 Content: 50C704240020400031C05AC3
14 - Name: .eh_frame_hdr
15 Type: SHT_PROGBITS
16 Flags: [ SHF_ALLOC ]
17 Address: 0x00000000004013c0
18 AddressAlign: 4
19 Content: 011B033B3C00000006000000E0F0FFFF8800000010F1FFFF58000000F6F1FFFFB000000010F2FFFFD000000090FEFFFF0001000000FFFFFF30010000
20 - Name: .eh_frame
21 Type: SHT_PROGBITS
22 Flags: [ SHF_ALLOC ]
23 Address: 0x0000000000401400
24 AddressAlign: 8
25 Content: 1400000000000000017A5200017810011B0C070890010710140000001C000000B0F0FFFF2A00000000000000000000001400000000000000017A5200017810011B0C070890010000240000001C00000050F0FFFF20000000000E10460E184A0F0B770880003F1A3B2A332422000000001C000000440000003EF1FFFF1000000000410E108602430D064B0C07080000002C0000006400000038F1FFFF7F0C000000450C0A00491006027600450F0376780603660C0C0A00450C070800000000002C0000009400000088FDFFFF6600000000410E108602430D06428F03458E04478D058C06488307024B0C07080000000014000000C4000000C8FDFFFF01000000000000000000000000000000
26 Symbols:
27 - Name: myfunc
28 Type: STT_FUNC
29 Section: .text
30 Value: 0x0000000000400000
31 Binding: STB_GLOBAL
32 ProgramHeaders:
33 - Type: PT_LOAD
34 Flags: [ PF_X, PF_R ]
35 VAddr: 0x00400000
36 PAddr: 0x00400000
37 Sections:
38 - Section: .text
39 - Type: PT_GNU_EH_FRAME
40 Flags: [ PF_X, PF_R ]
41 VAddr: 0x004013C0
42 PAddr: 0x004013C0
43 Sections:
44 - Section: .eh_frame_hdr
45 ...
+0
-22
test/tools/llvm-readobj/Inputs/file-aux-record.yaml less more
None !COFF
1 header: !Header
2 Machine: IMAGE_FILE_MACHINE_I386 # (0x14c)
3 Characteristics: [ IMAGE_FILE_DEBUG_STRIPPED ]
4 sections:
5 symbols:
6 - !Symbol
7 Name: .file
8 Value: 0
9 SectionNumber: -2
10 SimpleType: IMAGE_SYM_TYPE_NULL
11 ComplexType: IMAGE_SYM_DTYPE_NULL
12 StorageClass: IMAGE_SYM_CLASS_FILE
13 File: eighteen-chars.obj
14 - !Symbol
15 Name: '@comp.id'
16 Value: 13485607
17 SectionNumber: -1
18 SimpleType: IMAGE_SYM_TYPE_NULL
19 ComplexType: IMAGE_SYM_DTYPE_NULL
20 StorageClass: IMAGE_SYM_CLASS_STATIC
21
+0
-22
test/tools/llvm-readobj/Inputs/file-multiple-aux-records.yaml less more
None !COFF
1 header: !Header
2 Machine: IMAGE_FILE_MACHINE_I386 # (0x14c)
3 Characteristics: [ IMAGE_FILE_DEBUG_STRIPPED ]
4 sections:
5 symbols:
6 - !Symbol
7 Name: .file
8 Value: 0
9 SectionNumber: -2
10 SimpleType: IMAGE_SYM_TYPE_NULL
11 ComplexType: IMAGE_SYM_DTYPE_NULL
12 StorageClass: IMAGE_SYM_CLASS_FILE
13 File: first-section-has-eighteen-characters.asm
14 - !Symbol
15 Name: '@comp.id'
16 Value: 13485607
17 SectionNumber: -1
18 SimpleType: IMAGE_SYM_TYPE_NULL
19 ComplexType: IMAGE_SYM_DTYPE_NULL
20 StorageClass: IMAGE_SYM_CLASS_STATIC
21
None RUN: yaml2obj %p/Inputs/file-multiple-aux-records.yaml | llvm-readobj --symbols - | FileCheck %s
0 # RUN: yaml2obj %s | llvm-readobj --symbols - | FileCheck %s
11
2 CHECK: Symbols [
3 CHECK: Symbol {
4 CHECK: Name: .file
5 CHECK: Value: 0
6 CHECK: Section: IMAGE_SYM_DEBUG (-2)
7 CHECK: BaseType: Null (0x0)
8 CHECK: ComplexType: Null (0x0)
9 CHECK: StorageClass: File (0x67)
10 CHECK: AuxSymbolCount: 3
11 CHECK: AuxFileRecord {
12 CHECK: FileName: first-section-has-eighteen-characters.asm
13 CHECK: }
14 CHECK-NOT: AuxFileRecord {
15 CHECK: }
16 CHECK: ]
2 # CHECK: Symbols [
3 # CHECK: Symbol {
4 # CHECK: Name: .file
5 # CHECK: Value: 0
6 # CHECK: Section: IMAGE_SYM_DEBUG (-2)
7 # CHECK: BaseType: Null (0x0)
8 # CHECK: ComplexType: Null (0x0)
9 # CHECK: StorageClass: File (0x67)
10 # CHECK: AuxSymbolCount: 3
11 # CHECK: AuxFileRecord {
12 # CHECK: FileName: first-section-has-eighteen-characters.asm
13 # CHECK: }
14 # CHECK-NOT: AuxFileRecord {
15 # CHECK: }
16 # CHECK: ]
1717
18 !COFF
19 header: !Header
20 Machine: IMAGE_FILE_MACHINE_I386 # (0x14c)
21 Characteristics: [ IMAGE_FILE_DEBUG_STRIPPED ]
22 sections:
23 symbols:
24 - !Symbol
25 Name: .file
26 Value: 0
27 SectionNumber: -2
28 SimpleType: IMAGE_SYM_TYPE_NULL
29 ComplexType: IMAGE_SYM_DTYPE_NULL
30 StorageClass: IMAGE_SYM_CLASS_FILE
31 File: first-section-has-eighteen-characters.asm
32 - !Symbol
33 Name: '@comp.id'
34 Value: 13485607
35 SectionNumber: -1
36 SimpleType: IMAGE_SYM_TYPE_NULL
37 ComplexType: IMAGE_SYM_DTYPE_NULL
38 StorageClass: IMAGE_SYM_CLASS_STATIC
None RUN: yaml2obj %p/Inputs/file-aux-record.yaml | llvm-readobj --symbols - | FileCheck %s
0 # RUN: yaml2obj %s | llvm-readobj --symbols - | FileCheck %s
11
2 CHECK: Symbols [
3 CHECK: Symbol {
4 CHECK: Name: .file
5 CHECK: Value: 0
6 CHECK: StorageClass: File
7 CHECK: AuxSymbolCount: 1
8 CHECK: AuxFileRecord {
9 CHECK: FileName: eighteen-chars.obj{{$}}
10 CHECK: }
11 CHECK: }
12 CHECK: Symbol {
13 CHECK: Name: @comp.id
14 CHECK: Value: 13485607
15 CHECK: StorageClass: Static
16 CHECK: AuxSymbolCount: 0
17 CHECK: }
18 CHECK: ]
2 # CHECK: Symbols [
3 # CHECK: Symbol {
4 # CHECK: Name: .file
5 # CHECK: Value: 0
6 # CHECK: StorageClass: File
7 # CHECK: AuxSymbolCount: 1
8 # CHECK: AuxFileRecord {
9 # CHECK: FileName: eighteen-chars.obj{{$}}
10 # CHECK: }
11 # CHECK: }
12 # CHECK: Symbol {
13 # CHECK: Name: @comp.id
14 # CHECK: Value: 13485607
15 # CHECK: StorageClass: Static
16 # CHECK: AuxSymbolCount: 0
17 # CHECK: }
18 # CHECK: ]
1919
20 !COFF
21 header: !Header
22 Machine: IMAGE_FILE_MACHINE_I386 # (0x14c)
23 Characteristics: [ IMAGE_FILE_DEBUG_STRIPPED ]
24 sections:
25 symbols:
26 - !Symbol
27 Name: .file
28 Value: 0
29 SectionNumber: -2
30 SimpleType: IMAGE_SYM_TYPE_NULL
31 ComplexType: IMAGE_SYM_DTYPE_NULL
32 StorageClass: IMAGE_SYM_CLASS_FILE
33 File: eighteen-chars.obj
34 - !Symbol
35 Name: '@comp.id'
36 Value: 13485607
37 SectionNumber: -1
38 SimpleType: IMAGE_SYM_TYPE_NULL
39 ComplexType: IMAGE_SYM_DTYPE_NULL
40 StorageClass: IMAGE_SYM_CLASS_STATIC
None RUN: yaml2obj %p/Inputs/dwarf-exprs.exe-x86-64.yaml > %t.exe
1 RUN: llvm-readobj --unwind %t.exe | FileCheck %s
2
3 CHECK: EH_FRAME Header [
4 CHECK-NEXT: Address: 0x4013c0
5 CHECK-NEXT: Offset: 0x27c
6 CHECK-NEXT: Size: 0x3c
7 CHECK-NEXT: Corresponding Section: .eh_frame_hdr
8 CHECK-NEXT: Header {
9 CHECK-NEXT: version: 1
10 CHECK-NEXT: eh_frame_ptr_enc: 0x1b
11 CHECK-NEXT: fde_count_enc: 0x3
12 CHECK-NEXT: table_enc: 0x3b
13 CHECK-NEXT: eh_frame_ptr: 0x401400
14 CHECK-NEXT: fde_count: 6
15 CHECK-NEXT: entry 0 {
16 CHECK-NEXT: initial_location: 0x4004a0
17 CHECK-NEXT: address: 0x401448
18 CHECK-NEXT: }
19 CHECK-NEXT: entry 1 {
20 CHECK-NEXT: initial_location: 0x4004d0
21 CHECK-NEXT: address: 0x401418
22 CHECK-NEXT: }
23 CHECK-NEXT: entry 2 {
24 CHECK-NEXT: initial_location: 0x4005b6
25 CHECK-NEXT: address: 0x401470
26 CHECK-NEXT: }
27 CHECK-NEXT: entry 3 {
28 CHECK-NEXT: initial_location: 0x4005d0
29 CHECK-NEXT: address: 0x401490
30 CHECK-NEXT: }
31 CHECK-NEXT: entry 4 {
32 CHECK-NEXT: initial_location: 0x401250
33 CHECK-NEXT: address: 0x4014c0
34 CHECK-NEXT: }
35 CHECK-NEXT: entry 5 {
36 CHECK-NEXT: initial_location: 0x4012c0
37 CHECK-NEXT: address: 0x4014f0
38 CHECK-NEXT: }
39 CHECK-NEXT: }
40 CHECK-NEXT:]
41
42 CHECK: .eh_frame section at offset 0x2b8 address 0x401400:
43 CHECK-NEXT: [0x401400] CIE length=20
44 CHECK-NEXT: version: 1
45 CHECK-NEXT: augmentation: zR
46 CHECK-NEXT: code_alignment_factor: 1
47 CHECK-NEXT: data_alignment_factor: -8
48 CHECK-NEXT: return_address_register: 16
49
50 CHECK: Program:
51 CHECK-NEXT: DW_CFA_def_cfa: reg7 +8
52 CHECK-NEXT: DW_CFA_offset: reg16 -8
53 CHECK-NEXT: DW_CFA_undefined: reg16
54
55 CHECK: [0x401418] FDE length=20 cie=[0x401400]
56 CHECK-NEXT: initial_location: 0x4004d0
57 CHECK-NEXT: address_range: 0x2a (end : 0x4004fa)
58
59 CHECK: Program:
60 CHECK-NEXT: DW_CFA_nop:
61 CHECK-NEXT: DW_CFA_nop:
62 CHECK-NEXT: DW_CFA_nop:
63 CHECK-NEXT: DW_CFA_nop:
64 CHECK-NEXT: DW_CFA_nop:
65 CHECK-NEXT: DW_CFA_nop:
66 CHECK-NEXT: DW_CFA_nop:
67
68 CHECK: [0x401430] CIE length=20
69 CHECK-NEXT: version: 1
70 CHECK-NEXT: augmentation: zR
71 CHECK-NEXT: code_alignment_factor: 1
72 CHECK-NEXT: data_alignment_factor: -8
73 CHECK-NEXT: return_address_register: 16
74
75 CHECK: Program:
76 CHECK-NEXT: DW_CFA_def_cfa: reg7 +8
77 CHECK-NEXT: DW_CFA_offset: reg16 -8
78 CHECK-NEXT: DW_CFA_nop:
79 CHECK-NEXT: DW_CFA_nop:
80
81 CHECK: [0x401448] FDE length=36 cie=[0x401430]
82 CHECK-NEXT: initial_location: 0x4004a0
83 CHECK-NEXT: address_range: 0x20 (end : 0x4004c0)
84
85 CHECK: Program:
86 CHECK-NEXT: DW_CFA_def_cfa_offset: +16
87 CHECK-NEXT: DW_CFA_advance_loc: 6
88 CHECK-NEXT: DW_CFA_def_cfa_offset: +24
89 CHECK-NEXT: DW_CFA_advance_loc: 10
90 CHECK-NEXT: DW_CFA_def_cfa_expression: DW_OP_breg7 +8, DW_OP_breg16 +0, DW_OP_lit15, DW_OP_and, DW_OP_lit11, DW_OP_ge, DW_OP_lit3, DW_OP_shl, DW_OP_plus
91 CHECK-NEXT: DW_CFA_nop:
92 CHECK-NEXT: DW_CFA_nop:
93 CHECK-NEXT: DW_CFA_nop:
94 CHECK-NEXT: DW_CFA_nop:
95
96 CHECK: [0x401470] FDE length=28 cie=[0x401430]
97 CHECK-NEXT: initial_location: 0x4005b6
98 CHECK-NEXT: address_range: 0x10 (end : 0x4005c6)
99
100 CHECK: Program:
101 CHECK-NEXT: DW_CFA_advance_loc: 1
102 CHECK-NEXT: DW_CFA_def_cfa_offset: +16
103 CHECK-NEXT: DW_CFA_offset: reg6 -16
104 CHECK-NEXT: DW_CFA_advance_loc: 3
105 CHECK-NEXT: DW_CFA_def_cfa_register: reg6
106 CHECK-NEXT: DW_CFA_advance_loc: 11
107 CHECK-NEXT: DW_CFA_def_cfa: reg7 +8
108 CHECK-NEXT: DW_CFA_nop:
109 CHECK-NEXT: DW_CFA_nop:
110 CHECK-NEXT: DW_CFA_nop:
111
112 CHECK: [0x401490] FDE length=44 cie=[0x401430]
113 CHECK-NEXT: initial_location: 0x4005d0
114 CHECK-NEXT: address_range: 0xc7f (end : 0x40124f)
115
116 CHECK: Program:
117 CHECK-NEXT: DW_CFA_advance_loc: 5
118 CHECK-NEXT: DW_CFA_def_cfa: reg10 +0
119 CHECK-NEXT: DW_CFA_advance_loc: 9
120 CHECK-NEXT: DW_CFA_expression: reg6 DW_OP_breg6 +0
121 CHECK-NEXT: DW_CFA_advance_loc: 5
122 CHECK-NEXT: DW_CFA_def_cfa_expression: DW_OP_breg6 -8, DW_OP_deref
123 CHECK-NEXT: DW_CFA_advance_loc2: 3174
124 CHECK-NEXT: DW_CFA_def_cfa: reg10 +0
125 CHECK-NEXT: DW_CFA_advance_loc: 5
126 CHECK-NEXT: DW_CFA_def_cfa: reg7 +8
127 CHECK-NEXT: DW_CFA_nop:
128 CHECK-NEXT: DW_CFA_nop:
129 CHECK-NEXT: DW_CFA_nop:
130 CHECK-NEXT: DW_CFA_nop:
131
132 CHECK: [0x4014c0] FDE length=44 cie=[0x401430]
133 CHECK-NEXT: initial_location: 0x401250
134 CHECK-NEXT: address_range: 0x66 (end : 0x4012b6)
135
136 CHECK: Program:
137 CHECK-NEXT: DW_CFA_advance_loc: 1
138 CHECK-NEXT: DW_CFA_def_cfa_offset: +16
139 CHECK-NEXT: DW_CFA_offset: reg6 -16
140 CHECK-NEXT: DW_CFA_advance_loc: 3
141 CHECK-NEXT: DW_CFA_def_cfa_register: reg6
142 CHECK-NEXT: DW_CFA_advance_loc: 2
143 CHECK-NEXT: DW_CFA_offset: reg15 -24
144 CHECK-NEXT: DW_CFA_advance_loc: 5
145 CHECK-NEXT: DW_CFA_offset: reg14 -32
146 CHECK-NEXT: DW_CFA_advance_loc: 7
147 CHECK-NEXT: DW_CFA_offset: reg13 -40
148 CHECK-NEXT: DW_CFA_offset: reg12 -48
149 CHECK-NEXT: DW_CFA_advance_loc: 8
150 CHECK-NEXT: DW_CFA_offset: reg3 -56
151 CHECK-NEXT: DW_CFA_advance_loc1: 75
152 CHECK-NEXT: DW_CFA_def_cfa: reg7 +8
153 CHECK-NEXT: DW_CFA_nop:
154 CHECK-NEXT: DW_CFA_nop:
155 CHECK-NEXT: DW_CFA_nop:
156 CHECK-NEXT: DW_CFA_nop:
157
158 CHECK: [0x4014f0] FDE length=20 cie=[0x401430]
159 CHECK-NEXT: initial_location: 0x4012c0
160 CHECK-NEXT: address_range: 0x1 (end : 0x4012c1)
161
162 CHECK: Program:
163 CHECK-NEXT: DW_CFA_nop:
164 CHECK-NEXT: DW_CFA_nop:
165 CHECK-NEXT: DW_CFA_nop:
166 CHECK-NEXT: DW_CFA_nop:
167 CHECK-NEXT: DW_CFA_nop:
168 CHECK-NEXT: DW_CFA_nop:
169 CHECK-NEXT: DW_CFA_nop:
0 # RUN: yaml2obj %s > %t.exe
1 # RUN: llvm-readobj --unwind %t.exe | FileCheck %s
2
3 # CHECK: EH_FRAME Header [
4 # CHECK-NEXT: Address: 0x4013c0
5 # CHECK-NEXT: Offset: 0x27c
6 # CHECK-NEXT: Size: 0x3c
7 # CHECK-NEXT: Corresponding Section: .eh_frame_hdr
8 # CHECK-NEXT: Header {
9 # CHECK-NEXT: version: 1
10 # CHECK-NEXT: eh_frame_ptr_enc: 0x1b
11 # CHECK-NEXT: fde_count_enc: 0x3
12 # CHECK-NEXT: table_enc: 0x3b
13 # CHECK-NEXT: eh_frame_ptr: 0x401400
14 # CHECK-NEXT: fde_count: 6
15 # CHECK-NEXT: entry 0 {
16 # CHECK-NEXT: initial_location: 0x4004a0
17 # CHECK-NEXT: address: 0x401448
18 # CHECK-NEXT: }
19 # CHECK-NEXT: entry 1 {
20 # CHECK-NEXT: initial_location: 0x4004d0
21 # CHECK-NEXT: address: 0x401418
22 # CHECK-NEXT: }
23 # CHECK-NEXT: entry 2 {
24 # CHECK-NEXT: initial_location: 0x4005b6
25 # CHECK-NEXT: address: 0x401470
26 # CHECK-NEXT: }
27 # CHECK-NEXT: entry 3 {
28 # CHECK-NEXT: initial_location: 0x4005d0
29 # CHECK-NEXT: address: 0x401490
30 # CHECK-NEXT: }
31 # CHECK-NEXT: entry 4 {
32 # CHECK-NEXT: initial_location: 0x401250
33 # CHECK-NEXT: address: 0x4014c0
34 # CHECK-NEXT: }
35 # CHECK-NEXT: entry 5 {
36 # CHECK-NEXT: initial_location: 0x4012c0
37 # CHECK-NEXT: address: 0x4014f0
38 # CHECK-NEXT: }
39 # CHECK-NEXT: }
40 # CHECK-NEXT:]
41
42 # CHECK: .eh_frame section at offset 0x2b8 address 0x401400:
43 # CHECK-NEXT: [0x401400] CIE length=20
44 # CHECK-NEXT: version: 1
45 # CHECK-NEXT: augmentation: zR
46 # CHECK-NEXT: code_alignment_factor: 1
47 # CHECK-NEXT: data_alignment_factor: -8
48 # CHECK-NEXT: return_address_register: 16
49
50 # CHECK: Program:
51 # CHECK-NEXT: DW_CFA_def_cfa: reg7 +8
52 # CHECK-NEXT: DW_CFA_offset: reg16 -8
53 # CHECK-NEXT: DW_CFA_undefined: reg16
54
55 # CHECK: [0x401418] FDE length=20 cie=[0x401400]
56 # CHECK-NEXT: initial_location: 0x4004d0
57 # CHECK-NEXT: address_range: 0x2a (end : 0x4004fa)
58
59 # CHECK: Program:
60 # CHECK-NEXT: DW_CFA_nop:
61 # CHECK-NEXT: DW_CFA_nop:
62 # CHECK-NEXT: DW_CFA_nop:
63 # CHECK-NEXT: DW_CFA_nop:
64 # CHECK-NEXT: DW_CFA_nop:
65 # CHECK-NEXT: DW_CFA_nop:
66 # CHECK-NEXT: DW_CFA_nop:
67
68 # CHECK: [0x401430] CIE length=20
69 # CHECK-NEXT: version: 1
70 # CHECK-NEXT: augmentation: zR
71 # CHECK-NEXT: code_alignment_factor: 1
72 # CHECK-NEXT: data_alignment_factor: -8
73 # CHECK-NEXT: return_address_register: 16
74
75 # CHECK: Program:
76 # CHECK-NEXT: DW_CFA_def_cfa: reg7 +8
77 # CHECK-NEXT: DW_CFA_offset: reg16 -8
78 # CHECK-NEXT: DW_CFA_nop:
79 # CHECK-NEXT: DW_CFA_nop:
80
81 # CHECK: [0x401448] FDE length=36 cie=[0x401430]
82 # CHECK-NEXT: initial_location: 0x4004a0
83 # CHECK-NEXT: address_range: 0x20 (end : 0x4004c0)
84
85 # CHECK: Program:
86 # CHECK-NEXT: DW_CFA_def_cfa_offset: +16
87 # CHECK-NEXT: DW_CFA_advance_loc: 6
88 # CHECK-NEXT: DW_CFA_def_cfa_offset: +24
89 # CHECK-NEXT: DW_CFA_advance_loc: 10
90 # CHECK-NEXT: DW_CFA_def_cfa_expression: DW_OP_breg7 +8, DW_OP_breg16 +0, DW_OP_lit15, DW_OP_and, DW_OP_lit11, DW_OP_ge, DW_OP_lit3, DW_OP_shl, DW_OP_plus
91 # CHECK-NEXT: DW_CFA_nop:
92 # CHECK-NEXT: DW_CFA_nop:
93 # CHECK-NEXT: DW_CFA_nop:
94 # CHECK-NEXT: DW_CFA_nop:
95
96 # CHECK: [0x401470] FDE length=28 cie=[0x401430]
97 # CHECK-NEXT: initial_location: 0x4005b6
98 # CHECK-NEXT: address_range: 0x10 (end : 0x4005c6)
99
100 # CHECK: Program:
101 # CHECK-NEXT: DW_CFA_advance_loc: 1
102 # CHECK-NEXT: DW_CFA_def_cfa_offset: +16
103 # CHECK-NEXT: DW_CFA_offset: reg6 -16
104 # CHECK-NEXT: DW_CFA_advance_loc: 3
105 # CHECK-NEXT: DW_CFA_def_cfa_register: reg6
106 # CHECK-NEXT: DW_CFA_advance_loc: 11
107 # CHECK-NEXT: DW_CFA_def_cfa: reg7 +8
108 # CHECK-NEXT: DW_CFA_nop:
109 # CHECK-NEXT: DW_CFA_nop:
110 # CHECK-NEXT: DW_CFA_nop:
111
112 # CHECK: [0x401490] FDE length=44 cie=[0x401430]
113 # CHECK-NEXT: initial_location: 0x4005d0
114 # CHECK-NEXT: address_range: 0xc7f (end : 0x40124f)
115
116 # CHECK: Program:
117 # CHECK-NEXT: DW_CFA_advance_loc: 5
118 # CHECK-NEXT: DW_CFA_def_cfa: reg10 +0
119 # CHECK-NEXT: DW_CFA_advance_loc: 9
120 # CHECK-NEXT: DW_CFA_expression: reg6 DW_OP_breg6 +0
121 # CHECK-NEXT: DW_CFA_advance_loc: 5
122 # CHECK-NEXT: DW_CFA_def_cfa_expression: DW_OP_breg6 -8, DW_OP_deref
123 # CHECK-NEXT: DW_CFA_advance_loc2: 3174
124 # CHECK-NEXT: DW_CFA_def_cfa: reg10 +0
125 # CHECK-NEXT: DW_CFA_advance_loc: 5
126 # CHECK-NEXT: DW_CFA_def_cfa: reg7 +8
127 # CHECK-NEXT: DW_CFA_nop:
128 # CHECK-NEXT: DW_CFA_nop:
129 # CHECK-NEXT: DW_CFA_nop:
130 # CHECK-NEXT: DW_CFA_nop:
131
132 # CHECK: [0x4014c0] FDE length=44 cie=[0x401430]
133 # CHECK-NEXT: initial_location: 0x401250
134 # CHECK-NEXT: address_range: 0x66 (end : 0x4012b6)
135
136 # CHECK: Program:
137 # CHECK-NEXT: DW_CFA_advance_loc: 1
138 # CHECK-NEXT: DW_CFA_def_cfa_offset: +16
139 # CHECK-NEXT: DW_CFA_offset: reg6 -16
140 # CHECK-NEXT: DW_CFA_advance_loc: 3
141 # CHECK-NEXT: DW_CFA_def_cfa_register: reg6
142 # CHECK-NEXT: DW_CFA_advance_loc: 2
143 # CHECK-NEXT: DW_CFA_offset: reg15 -24
144 # CHECK-NEXT: DW_CFA_advance_loc: 5
145 # CHECK-NEXT: DW_CFA_offset: reg14 -32
146 # CHECK-NEXT: DW_CFA_advance_loc: 7
147 # CHECK-NEXT: DW_CFA_offset: reg13 -40
148 # CHECK-NEXT: DW_CFA_offset: reg12 -48
149 # CHECK-NEXT: DW_CFA_advance_loc: 8
150 # CHECK-NEXT: DW_CFA_offset: reg3 -56
151 # CHECK-NEXT: DW_CFA_advance_loc1: 75
152 # CHECK-NEXT: DW_CFA_def_cfa: reg7 +8
153 # CHECK-NEXT: DW_CFA_nop:
154 # CHECK-NEXT: DW_CFA_nop:
155 # CHECK-NEXT: DW_CFA_nop:
156 # CHECK-NEXT: DW_CFA_nop:
157
158 # CHECK: [0x4014f0] FDE length=20 cie=[0x401430]
159 # CHECK-NEXT: initial_location: 0x4012c0
160 # CHECK-NEXT: address_range: 0x1 (end : 0x4012c1)
161
162 # CHECK: Program:
163 # CHECK-NEXT: DW_CFA_nop:
164 # CHECK-NEXT: DW_CFA_nop:
165 # CHECK-NEXT: DW_CFA_nop:
166 # CHECK-NEXT: DW_CFA_nop:
167 # CHECK-NEXT: DW_CFA_nop:
168 # CHECK-NEXT: DW_CFA_nop:
169 # CHECK-NEXT: DW_CFA_nop:
170
171 --- !ELF
172 FileHeader:
173 Class: ELFCLASS64
174 Data: ELFDATA2LSB
175 Type: ET_EXEC
176 Machine: EM_X86_64
177 Entry: 0x0000000000400000
178 Sections:
179 - Name: .text
180 Type: SHT_PROGBITS
181 Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
182 Address: 0x0000000000400000
183 AddressAlign: 16
184 Content: 50C704240020400031C05AC3
185 - Name: .eh_frame_hdr
186 Type: SHT_PROGBITS
187 Flags: [ SHF_ALLOC ]
188 Address: 0x00000000004013c0
189 AddressAlign: 4
190 Content: 011B033B3C00000006000000E0F0FFFF8800000010F1FFFF58000000F6F1FFFFB000000010F2FFFFD000000090FEFFFF0001000000FFFFFF30010000
191 - Name: .eh_frame
192 Type: SHT_PROGBITS
193 Flags: [ SHF_ALLOC ]
194 Address: 0x0000000000401400
195 AddressAlign: 8
196 Content: 1400000000000000017A5200017810011B0C070890010710140000001C000000B0F0FFFF2A00000000000000000000001400000000000000017A5200017810011B0C070890010000240000001C00000050F0FFFF20000000000E10460E184A0F0B770880003F1A3B2A332422000000001C000000440000003EF1FFFF1000000000410E108602430D064B0C07080000002C0000006400000038F1FFFF7F0C000000450C0A00491006027600450F0376780603660C0C0A00450C070800000000002C0000009400000088FDFFFF6600000000410E108602430D06428F03458E04478D058C06488307024B0C07080000000014000000C4000000C8FDFFFF01000000000000000000000000000000
197 Symbols:
198 - Name: myfunc
199 Type: STT_FUNC
200 Section: .text
201 Value: 0x0000000000400000
202 Binding: STB_GLOBAL
203 ProgramHeaders:
204 - Type: PT_LOAD
205 Flags: [ PF_X, PF_R ]
206 VAddr: 0x00400000
207 PAddr: 0x00400000
208 Sections:
209 - Section: .text
210 - Type: PT_GNU_EH_FRAME
211 Flags: [ PF_X, PF_R ]
212 VAddr: 0x004013C0
213 PAddr: 0x004013C0
214 Sections:
215 - Section: .eh_frame_hdr
216 ...