xref: /aosp_15_r20/art/compiler/jni/jni_cfi_test_expected.inc (revision 795d594fd825385562da6b089ea9b2033f3abf5a)
1// TODO These arrays should be generated automatically or have instructions for re-creation.
2// For now, the gc_is_marking offset can be adjusted by tweaking the last CL that made a
3// similar change.
4
5static constexpr uint8_t expected_asm_kThumb2[] = {
6    0x2D, 0xE9, 0xE0, 0x4D, 0x2D, 0xED, 0x10, 0x8A, 0x81, 0xB0, 0x00, 0x90,
7    0x19, 0x91, 0x8D, 0xED, 0x1A, 0x0A, 0x1B, 0x92, 0x1C, 0x93, 0x88, 0xB0,
8    0x08, 0xB0, 0x01, 0xB0, 0xBD, 0xEC, 0x10, 0x8A, 0xBD, 0xE8, 0xE0, 0x4D,
9    0xD9, 0xF8, 0x20, 0x80, 0x70, 0x47,
10};
11static constexpr uint8_t expected_cfi_kThumb2[] = {
12    0x44, 0x0E, 0x1C, 0x85, 0x07, 0x86, 0x06, 0x87, 0x05, 0x88, 0x04, 0x8A,
13    0x03, 0x8B, 0x02, 0x8E, 0x01, 0x44, 0x0E, 0x5C, 0x05, 0x50, 0x17, 0x05,
14    0x51, 0x16, 0x05, 0x52, 0x15, 0x05, 0x53, 0x14, 0x05, 0x54, 0x13, 0x05,
15    0x55, 0x12, 0x05, 0x56, 0x11, 0x05, 0x57, 0x10, 0x05, 0x58, 0x0F, 0x05,
16    0x59, 0x0E, 0x05, 0x5A, 0x0D, 0x05, 0x5B, 0x0C, 0x05, 0x5C, 0x0B, 0x05,
17    0x5D, 0x0A, 0x05, 0x5E, 0x09, 0x05, 0x5F, 0x08, 0x42, 0x0E, 0x60, 0x4E,
18    0x0E, 0x80, 0x01, 0x42, 0x0E, 0x60, 0x0A, 0x42, 0x0E, 0x5C, 0x44, 0x0E,
19    0x1C, 0x06, 0x50, 0x06, 0x51, 0x06, 0x52, 0x06, 0x53, 0x06, 0x54, 0x06,
20    0x55, 0x06, 0x56, 0x06, 0x57, 0x06, 0x58, 0x06, 0x59, 0x06, 0x5A, 0x06,
21    0x5B, 0x06, 0x5C, 0x06, 0x5D, 0x06, 0x5E, 0x06, 0x5F, 0x44, 0x0E, 0x00,
22    0xC5, 0xC6, 0xC7, 0xC8, 0xCA, 0xCB, 0xCE, 0x46, 0x0B, 0x0E, 0x60,
23};
24// 0x00000000: push {r5,r6,r7,r8,r10,r11,lr}
25// 0x00000004: .cfi_def_cfa_offset: 28
26// 0x00000004: .cfi_offset: r5 at cfa-28
27// 0x00000004: .cfi_offset: r6 at cfa-24
28// 0x00000004: .cfi_offset: r7 at cfa-20
29// 0x00000004: .cfi_offset: r8 at cfa-16
30// 0x00000004: .cfi_offset: r10 at cfa-12
31// 0x00000004: .cfi_offset: r11 at cfa-8
32// 0x00000004: .cfi_offset: r14 at cfa-4
33// 0x00000004: vpush {s16-s31}
34// 0x00000008: .cfi_def_cfa_offset: 92
35// 0x00000008: .cfi_offset_extended: r80 at cfa-92
36// 0x00000008: .cfi_offset_extended: r81 at cfa-88
37// 0x00000008: .cfi_offset_extended: r82 at cfa-84
38// 0x00000008: .cfi_offset_extended: r83 at cfa-80
39// 0x00000008: .cfi_offset_extended: r84 at cfa-76
40// 0x00000008: .cfi_offset_extended: r85 at cfa-72
41// 0x00000008: .cfi_offset_extended: r86 at cfa-68
42// 0x00000008: .cfi_offset_extended: r87 at cfa-64
43// 0x00000008: .cfi_offset_extended: r88 at cfa-60
44// 0x00000008: .cfi_offset_extended: r89 at cfa-56
45// 0x00000008: .cfi_offset_extended: r90 at cfa-52
46// 0x00000008: .cfi_offset_extended: r91 at cfa-48
47// 0x00000008: .cfi_offset_extended: r92 at cfa-44
48// 0x00000008: .cfi_offset_extended: r93 at cfa-40
49// 0x00000008: .cfi_offset_extended: r94 at cfa-36
50// 0x00000008: .cfi_offset_extended: r95 at cfa-32
51// 0x00000008: sub sp, #4
52// 0x0000000a: .cfi_def_cfa_offset: 96
53// 0x0000000a: str r0, [sp]
54// 0x0000000c: str r1, [sp, #100]
55// 0x0000000e: vstr s0, [sp, #104]
56// 0x00000012: str r2, [sp, #108]
57// 0x00000014: str r3, [sp, #112]
58// 0x00000016: sub sp, #32
59// 0x00000018: .cfi_def_cfa_offset: 128
60// 0x00000018: add sp, #32
61// 0x0000001a: .cfi_def_cfa_offset: 96
62// 0x0000001a: .cfi_remember_state
63// 0x0000001a: add sp, #4
64// 0x0000001c: .cfi_def_cfa_offset: 92
65// 0x0000001c: vpop {s16-s31}
66// 0x00000020: .cfi_def_cfa_offset: 28
67// 0x00000020: .cfi_restore_extended: r80
68// 0x00000020: .cfi_restore_extended: r81
69// 0x00000020: .cfi_restore_extended: r82
70// 0x00000020: .cfi_restore_extended: r83
71// 0x00000020: .cfi_restore_extended: r84
72// 0x00000020: .cfi_restore_extended: r85
73// 0x00000020: .cfi_restore_extended: r86
74// 0x00000020: .cfi_restore_extended: r87
75// 0x00000020: .cfi_restore_extended: r88
76// 0x00000020: .cfi_restore_extended: r89
77// 0x00000020: .cfi_restore_extended: r90
78// 0x00000020: .cfi_restore_extended: r91
79// 0x00000020: .cfi_restore_extended: r92
80// 0x00000020: .cfi_restore_extended: r93
81// 0x00000020: .cfi_restore_extended: r94
82// 0x00000020: .cfi_restore_extended: r95
83// 0x00000020: pop {r5,r6,r7,r8,r10,r11,lr}
84// 0x00000024: .cfi_def_cfa_offset: 0
85// 0x00000024: .cfi_restore: r5
86// 0x00000024: .cfi_restore: r6
87// 0x00000024: .cfi_restore: r7
88// 0x00000024: .cfi_restore: r8
89// 0x00000024: .cfi_restore: r10
90// 0x00000024: .cfi_restore: r11
91// 0x00000024: .cfi_restore: r14
92// 0x00000024: ldr r8, [tr, #32] ; is_gc_marking
93// 0x00000028: bx lr
94// 0x0000002a: .cfi_restore_state
95// 0x0000002a: .cfi_def_cfa_offset: 112
96
97static constexpr uint8_t expected_asm_kArm64[] = {
98    0xFF, 0xC3, 0x02, 0xD1, 0xF3, 0x53, 0x05, 0xA9, 0xF5, 0x5B, 0x06, 0xA9,
99    0xF7, 0x63, 0x07, 0xA9, 0xF9, 0x6B, 0x08, 0xA9, 0xFB, 0x73, 0x09, 0xA9,
100    0xFD, 0x7B, 0x0A, 0xA9, 0xE8, 0x27, 0x01, 0x6D, 0xEA, 0x2F, 0x02, 0x6D,
101    0xEC, 0x37, 0x03, 0x6D, 0xEE, 0x3F, 0x04, 0x6D, 0xE0, 0x03, 0x00, 0xF9,
102    0xE1, 0xBB, 0x00, 0xB9, 0xE0, 0xBF, 0x00, 0xBD, 0xE2, 0xC3, 0x00, 0xB9,
103    0xE3, 0xC7, 0x00, 0xB9, 0xFF, 0x83, 0x00, 0xD1, 0xFF, 0x83, 0x00, 0x91,
104    0xF3, 0x53, 0x45, 0xA9, 0xF5, 0x5B, 0x46, 0xA9, 0xF7, 0x63, 0x47, 0xA9,
105    0xF9, 0x6B, 0x48, 0xA9, 0xFB, 0x73, 0x49, 0xA9, 0xFD, 0x7B, 0x4A, 0xA9,
106    0xE8, 0x27, 0x41, 0x6D, 0xEA, 0x2F, 0x42, 0x6D, 0xEC, 0x37, 0x43, 0x6D,
107    0xEE, 0x3F, 0x44, 0x6D, 0x74, 0x22, 0x40, 0xB9, 0xFF, 0xC3, 0x02, 0x91,
108    0xC0, 0x03, 0x5F, 0xD6,
109};
110static constexpr uint8_t expected_cfi_kArm64[] = {
111    0x44, 0x0E, 0xB0, 0x01, 0x44, 0x93, 0x18, 0x94, 0x16, 0x44, 0x95, 0x14,
112    0x96, 0x12, 0x44, 0x97, 0x10, 0x98, 0x0E, 0x44, 0x99, 0x0C, 0x9A, 0x0A,
113    0x44, 0x9B, 0x08, 0x9C, 0x06, 0x44, 0x9D, 0x04, 0x9E, 0x02, 0x44, 0x05,
114    0x48, 0x28, 0x05, 0x49, 0x26, 0x44, 0x05, 0x4A, 0x24, 0x05, 0x4B, 0x22,
115    0x44, 0x05, 0x4C, 0x20, 0x05, 0x4D, 0x1E, 0x44, 0x05, 0x4E, 0x1C, 0x05,
116    0x4F, 0x1A, 0x58, 0x0E, 0xD0, 0x01, 0x44, 0x0E, 0xB0, 0x01, 0x0A, 0x44,
117    0xD3, 0xD4, 0x44, 0xD5, 0xD6, 0x44, 0xD7, 0xD8, 0x44, 0xD9, 0xDA, 0x44,
118    0xDB, 0xDC, 0x44, 0xDD, 0xDE, 0x44, 0x06, 0x48, 0x06, 0x49, 0x44, 0x06,
119    0x4A, 0x06, 0x4B, 0x44, 0x06, 0x4C, 0x06, 0x4D, 0x44, 0x06, 0x4E, 0x06,
120    0x4F, 0x48, 0x0E, 0x00, 0x44, 0x0B, 0x0E, 0xB0, 0x01,
121};
122// 0x00000000: sub sp, sp, #0xb0 (176)
123// 0x00000004: .cfi_def_cfa_offset: 176
124// 0x00000004: stp tr, x20, [sp, #80]
125// 0x00000008: .cfi_offset: r19 at cfa-96
126// 0x00000008: .cfi_offset: r20 at cfa-88
127// 0x00000008: stp x21, x22, [sp, #96]
128// 0x0000000c: .cfi_offset: r21 at cfa-80
129// 0x0000000c: .cfi_offset: r22 at cfa-72
130// 0x0000000c: stp x23, x24, [sp, #112]
131// 0x00000010: .cfi_offset: r23 at cfa-64
132// 0x00000010: .cfi_offset: r24 at cfa-56
133// 0x00000010: stp x25, x26, [sp, #128]
134// 0x00000014: .cfi_offset: r25 at cfa-48
135// 0x00000014: .cfi_offset: r26 at cfa-40
136// 0x00000014: stp x27, x28, [sp, #144]
137// 0x00000018: .cfi_offset: r27 at cfa-32
138// 0x00000018: .cfi_offset: r28 at cfa-24
139// 0x00000018: stp x29, lr, [sp, #160]
140// 0x0000001c: .cfi_offset: r29 at cfa-16
141// 0x0000001c: .cfi_offset: r30 at cfa-8
142// 0x0000001c: stp d8, d9, [sp, #16]
143// 0x00000020: .cfi_offset_extended: r72 at cfa-160
144// 0x00000020: .cfi_offset_extended: r73 at cfa-152
145// 0x00000020: stp d10, d11, [sp, #32]
146// 0x00000024: .cfi_offset_extended: r74 at cfa-144
147// 0x00000024: .cfi_offset_extended: r75 at cfa-136
148// 0x00000024: stp d12, d13, [sp, #48]
149// 0x00000028: .cfi_offset_extended: r76 at cfa-128
150// 0x00000028: .cfi_offset_extended: r77 at cfa-120
151// 0x00000028: stp d14, d15, [sp, #64]
152// 0x0000002c: .cfi_offset_extended: r78 at cfa-112
153// 0x0000002c: .cfi_offset_extended: r79 at cfa-104
154// 0x0000002c: str x0, [sp]
155// 0x00000030: str w1, [sp, #184]
156// 0x00000034: str s0, [sp, #188]
157// 0x00000038: str w2, [sp, #192]
158// 0x0000003c: str w3, [sp, #196]
159// 0x00000040: sub sp, sp, #0x20 (32)
160// 0x00000044: .cfi_def_cfa_offset: 208
161// 0x00000044: add sp, sp, #0x20 (32)
162// 0x00000048: .cfi_def_cfa_offset: 176
163// 0x00000048: .cfi_remember_state
164// 0x00000048: ldp tr, x20, [sp, #80]
165// 0x0000004c: .cfi_restore: r19
166// 0x0000004c: .cfi_restore: r20
167// 0x0000004c: ldp x21, x22, [sp, #96]
168// 0x00000050: .cfi_restore: r21
169// 0x00000050: .cfi_restore: r22
170// 0x00000050: ldp x23, x24, [sp, #112]
171// 0x00000054: .cfi_restore: r23
172// 0x00000054: .cfi_restore: r24
173// 0x00000054: ldp x25, x26, [sp, #128]
174// 0x00000058: .cfi_restore: r25
175// 0x00000058: .cfi_restore: r26
176// 0x00000058: ldp x27, x28, [sp, #144]
177// 0x0000005c: .cfi_restore: r27
178// 0x0000005c: .cfi_restore: r28
179// 0x0000005c: ldp x29, lr, [sp, #160]
180// 0x00000060: .cfi_restore: r29
181// 0x00000060: .cfi_restore: r30
182// 0x00000060: ldp d8, d9, [sp, #16]
183// 0x00000064: .cfi_restore_extended: r72
184// 0x00000064: .cfi_restore_extended: r73
185// 0x00000064: ldp d10, d11, [sp, #32]
186// 0x00000068: .cfi_restore_extended: r74
187// 0x00000068: .cfi_restore_extended: r75
188// 0x00000068: ldp d12, d13, [sp, #48]
189// 0x0000006c: .cfi_restore_extended: r76
190// 0x0000006c: .cfi_restore_extended: r77
191// 0x0000006c: ldp d14, d15, [sp, #64]
192// 0x00000070: .cfi_restore_extended: r78
193// 0x00000070: .cfi_restore_extended: r79
194// 0x00000070: ldr w20, [tr, #32] ; is_gc_marking
195// 0x00000074: add sp, sp, #0xb0 (176)
196// 0x00000078: .cfi_def_cfa_offset: 0
197// 0x00000078: ret
198// 0x0000007c: .cfi_restore_state
199// 0x0000007c: .cfi_def_cfa_offset: 176
200
201static constexpr uint8_t expected_asm_kX86[] = {
202    0x57, 0x56, 0x55, 0x83, 0xC4, 0xF4, 0x50, 0x89, 0x4C, 0x24, 0x24, 0xF3,
203    0x0F, 0x11, 0x44, 0x24, 0x28, 0x89, 0x54, 0x24, 0x2C, 0x89, 0x5C, 0x24,
204    0x30, 0x83, 0xC4, 0xE0, 0x83, 0xC4, 0x20, 0x83, 0xC4, 0x10, 0x5D, 0x5E,
205    0x5F, 0xC3,
206};
207static constexpr uint8_t expected_cfi_kX86[] = {
208    0x41, 0x0E, 0x08, 0x87, 0x02, 0x41, 0x0E, 0x0C, 0x86, 0x03, 0x41, 0x0E,
209    0x10, 0x85, 0x04, 0x43, 0x0E, 0x1C, 0x41, 0x0E, 0x20, 0x55, 0x0E, 0x40,
210    0x43, 0x0E, 0x20, 0x0A, 0x43, 0x0E, 0x10, 0x41, 0x0E, 0x0C, 0xC5, 0x41,
211    0x0E, 0x08, 0xC6, 0x41, 0x0E, 0x04, 0xC7, 0x41, 0x0B, 0x0E, 0x20,
212};
213// 0x00000000: push edi
214// 0x00000001: .cfi_def_cfa_offset: 8
215// 0x00000001: .cfi_offset: r7 at cfa-8
216// 0x00000001: push esi
217// 0x00000002: .cfi_def_cfa_offset: 12
218// 0x00000002: .cfi_offset: r6 at cfa-12
219// 0x00000002: push ebp
220// 0x00000003: .cfi_def_cfa_offset: 16
221// 0x00000003: .cfi_offset: r5 at cfa-16
222// 0x00000003: add esp, -12
223// 0x00000006: .cfi_def_cfa_offset: 28
224// 0x00000006: push eax
225// 0x00000007: .cfi_def_cfa_offset: 32
226// 0x00000007: mov [esp + 36], ecx
227// 0x0000000b: movss [esp + 40], xmm0
228// 0x00000011: mov [esp + 44], edx
229// 0x00000015: mov [esp + 48], ebx
230// 0x00000019: add esp, -32
231// 0x0000001c: .cfi_def_cfa_offset: 64
232// 0x0000001c: add esp, 32
233// 0x0000001f: .cfi_def_cfa_offset: 32
234// 0x0000001f: .cfi_remember_state
235// 0x0000001f: add esp, 16
236// 0x00000022: .cfi_def_cfa_offset: 16
237// 0x00000022: pop ebp
238// 0x00000023: .cfi_def_cfa_offset: 12
239// 0x00000023: .cfi_restore: r5
240// 0x00000023: pop esi
241// 0x00000024: .cfi_def_cfa_offset: 8
242// 0x00000024: .cfi_restore: r6
243// 0x00000024: pop edi
244// 0x00000025: .cfi_def_cfa_offset: 4
245// 0x00000025: .cfi_restore: r7
246// 0x00000025: ret
247// 0x00000026: .cfi_restore_state
248// 0x00000026: .cfi_def_cfa_offset: 32
249
250static constexpr uint8_t expected_asm_kX86_64[] = {
251    0x41, 0x57, 0x41, 0x56, 0x41, 0x55, 0x41, 0x54, 0x55, 0x53, 0x48, 0x83,
252    0xEC, 0x28, 0xF2, 0x44, 0x0F, 0x11, 0x7C, 0x24, 0x20, 0xF2, 0x44, 0x0F,
253    0x11, 0x74, 0x24, 0x18, 0xF2, 0x44, 0x0F, 0x11, 0x6C, 0x24, 0x10, 0xF2,
254    0x44, 0x0F, 0x11, 0x64, 0x24, 0x08, 0x48, 0x89, 0x3C, 0x24, 0x89, 0x74,
255    0x24, 0x68, 0xF3, 0x0F, 0x11, 0x44, 0x24, 0x6C, 0x89, 0x54, 0x24, 0x70,
256    0x89, 0x4C, 0x24, 0x74, 0x48, 0x83, 0xC4, 0xE0, 0x48, 0x83, 0xC4, 0x20,
257    0xF2, 0x44, 0x0F, 0x10, 0x64, 0x24, 0x08, 0xF2, 0x44, 0x0F, 0x10, 0x6C,
258    0x24, 0x10, 0xF2, 0x44, 0x0F, 0x10, 0x74, 0x24, 0x18, 0xF2, 0x44, 0x0F,
259    0x10, 0x7C, 0x24, 0x20, 0x48, 0x83, 0xC4, 0x28, 0x5B, 0x5D, 0x41, 0x5C,
260    0x41, 0x5D, 0x41, 0x5E, 0x41, 0x5F, 0xC3,
261};
262static constexpr uint8_t expected_cfi_kX86_64[] = {
263    0x42, 0x0E, 0x10, 0x8F, 0x04, 0x42, 0x0E, 0x18, 0x8E, 0x06, 0x42, 0x0E,
264    0x20, 0x8D, 0x08, 0x42, 0x0E, 0x28, 0x8C, 0x0A, 0x41, 0x0E, 0x30, 0x86,
265    0x0C, 0x41, 0x0E, 0x38, 0x83, 0x0E, 0x44, 0x0E, 0x60, 0x47, 0xA0, 0x10,
266    0x47, 0x9F, 0x12, 0x47, 0x9E, 0x14, 0x47, 0x9D, 0x16, 0x5A, 0x0E, 0x80,
267    0x01, 0x44, 0x0E, 0x60, 0x0A, 0x47, 0xDD, 0x47, 0xDE, 0x47, 0xDF, 0x47,
268    0xE0, 0x44, 0x0E, 0x38, 0x41, 0x0E, 0x30, 0xC3, 0x41, 0x0E, 0x28, 0xC6,
269    0x42, 0x0E, 0x20, 0xCC, 0x42, 0x0E, 0x18, 0xCD, 0x42, 0x0E, 0x10, 0xCE,
270    0x42, 0x0E, 0x08, 0xCF, 0x41, 0x0B, 0x0E, 0x60,
271};
272// 0x00000000: push r15
273// 0x00000002: .cfi_def_cfa_offset: 16
274// 0x00000002: .cfi_offset: r15 at cfa-16
275// 0x00000002: push r14
276// 0x00000004: .cfi_def_cfa_offset: 24
277// 0x00000004: .cfi_offset: r14 at cfa-24
278// 0x00000004: push r13
279// 0x00000006: .cfi_def_cfa_offset: 32
280// 0x00000006: .cfi_offset: r13 at cfa-32
281// 0x00000006: push r12
282// 0x00000008: .cfi_def_cfa_offset: 40
283// 0x00000008: .cfi_offset: r12 at cfa-40
284// 0x00000008: push rbp
285// 0x00000009: .cfi_def_cfa_offset: 48
286// 0x00000009: .cfi_offset: r6 at cfa-48
287// 0x00000009: push rbx
288// 0x0000000a: .cfi_def_cfa_offset: 56
289// 0x0000000a: .cfi_offset: r3 at cfa-56
290// 0x0000000a: subq rsp, 40
291// 0x0000000e: .cfi_def_cfa_offset: 96
292// 0x0000000e: movsd [rsp + 32], xmm15
293// 0x00000015: .cfi_offset: r32 at cfa-64
294// 0x00000015: movsd [rsp + 24], xmm14
295// 0x0000001c: .cfi_offset: r31 at cfa-72
296// 0x0000001c: movsd [rsp + 16], xmm13
297// 0x00000023: .cfi_offset: r30 at cfa-80
298// 0x00000023: movsd [rsp + 8], xmm12
299// 0x0000002a: .cfi_offset: r29 at cfa-88
300// 0x0000002a: movq [rsp], rdi
301// 0x0000002e: mov [rsp + 104], esi
302// 0x00000032: movss [rsp + 108], xmm0
303// 0x00000038: mov [rsp + 112], edx
304// 0x0000003c: mov [rsp + 116], ecx
305// 0x00000040: addq rsp, -32
306// 0x00000044: .cfi_def_cfa_offset: 128
307// 0x00000044: addq rsp, 32
308// 0x00000048: .cfi_def_cfa_offset: 96
309// 0x00000048: .cfi_remember_state
310// 0x00000048: movsd xmm12, [rsp + 8]
311// 0x0000004f: .cfi_restore: r29
312// 0x0000004f: movsd xmm13, [rsp + 16]
313// 0x00000056: .cfi_restore: r30
314// 0x00000056: movsd xmm14, [rsp + 24]
315// 0x0000005d: .cfi_restore: r31
316// 0x0000005d: movsd xmm15, [rsp + 32]
317// 0x00000064: .cfi_restore: r32
318// 0x00000064: addq rsp, 40
319// 0x00000068: .cfi_def_cfa_offset: 56
320// 0x00000068: pop rbx
321// 0x00000069: .cfi_def_cfa_offset: 48
322// 0x00000069: .cfi_restore: r3
323// 0x00000069: pop rbp
324// 0x0000006a: .cfi_def_cfa_offset: 40
325// 0x0000006a: .cfi_restore: r6
326// 0x0000006a: pop r12
327// 0x0000006c: .cfi_def_cfa_offset: 32
328// 0x0000006c: .cfi_restore: r12
329// 0x0000006c: pop r13
330// 0x0000006e: .cfi_def_cfa_offset: 24
331// 0x0000006e: .cfi_restore: r13
332// 0x0000006e: pop r14
333// 0x00000070: .cfi_def_cfa_offset: 16
334// 0x00000070: .cfi_restore: r14
335// 0x00000070: pop r15
336// 0x00000072: .cfi_def_cfa_offset: 8
337// 0x00000072: .cfi_restore: r15
338// 0x00000072: ret
339// 0x00000073: .cfi_restore_state
340// 0x00000073: .cfi_def_cfa_offset: 96
341
342