• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// This file is generated from a similarly-named Perl script in the BoringSSL
2// source tree. Do not edit by hand.
3
4#if defined(__has_feature)
5#if __has_feature(memory_sanitizer) && !defined(OPENSSL_NO_ASM)
6#define OPENSSL_NO_ASM
7#endif
8#endif
9
10#if !defined(OPENSSL_NO_ASM)
11#if defined(__aarch64__)
12#if defined(BORINGSSL_PREFIX)
13#include <boringssl_prefix_symbols_asm.h>
14#endif
15.text
16
17// abi_test_trampoline loads callee-saved registers from |state|, calls |func|
18// with |argv|, then saves the callee-saved registers into |state|. It returns
19// the result of |func|. The |unwind| argument is unused.
20// uint64_t abi_test_trampoline(void (*func)(...), CallerState *state,
21//                              const uint64_t *argv, size_t argc,
22//                              uint64_t unwind);
23.type	abi_test_trampoline, %function
24.globl	abi_test_trampoline
25.hidden	abi_test_trampoline
26.align	4
27abi_test_trampoline:
28.Labi_test_trampoline_begin:
29	// Stack layout (low to high addresses)
30	//   x29,x30 (16 bytes)
31	//    d8-d15 (64 bytes)
32	//   x19-x28 (80 bytes)
33	//    x1 (8 bytes)
34	//   padding (8 bytes)
35	stp	x29, x30, [sp, #-176]!
36	mov	x29, sp
37
38	// Saved callee-saved registers and |state|.
39	stp	d8, d9, [sp, #16]
40	stp	d10, d11, [sp, #32]
41	stp	d12, d13, [sp, #48]
42	stp	d14, d15, [sp, #64]
43	stp	x19, x20, [sp, #80]
44	stp	x21, x22, [sp, #96]
45	stp	x23, x24, [sp, #112]
46	stp	x25, x26, [sp, #128]
47	stp	x27, x28, [sp, #144]
48	str	x1, [sp, #160]
49
50	// Load registers from |state|, with the exception of x29. x29 is the
51	// frame pointer and also callee-saved, but AAPCS64 allows platforms to
52	// mandate that x29 always point to a frame. iOS64 does so, which means
53	// we cannot fill x29 with entropy without violating ABI rules
54	// ourselves. x29 is tested separately below.
55	ldp	d8, d9, [x1], #16
56	ldp	d10, d11, [x1], #16
57	ldp	d12, d13, [x1], #16
58	ldp	d14, d15, [x1], #16
59	ldp	x19, x20, [x1], #16
60	ldp	x21, x22, [x1], #16
61	ldp	x23, x24, [x1], #16
62	ldp	x25, x26, [x1], #16
63	ldp	x27, x28, [x1], #16
64
65	// Move parameters into temporary registers.
66	mov	x9, x0
67	mov	x10, x2
68	mov	x11, x3
69
70	// Load parameters into registers.
71	cbz	x11, .Largs_done
72	ldr	x0, [x10], #8
73	subs	x11, x11, #1
74	b.eq	.Largs_done
75	ldr	x1, [x10], #8
76	subs	x11, x11, #1
77	b.eq	.Largs_done
78	ldr	x2, [x10], #8
79	subs	x11, x11, #1
80	b.eq	.Largs_done
81	ldr	x3, [x10], #8
82	subs	x11, x11, #1
83	b.eq	.Largs_done
84	ldr	x4, [x10], #8
85	subs	x11, x11, #1
86	b.eq	.Largs_done
87	ldr	x5, [x10], #8
88	subs	x11, x11, #1
89	b.eq	.Largs_done
90	ldr	x6, [x10], #8
91	subs	x11, x11, #1
92	b.eq	.Largs_done
93	ldr	x7, [x10], #8
94
95.Largs_done:
96	blr	x9
97
98	// Reload |state| and store registers.
99	ldr	x1, [sp, #160]
100	stp	d8, d9, [x1], #16
101	stp	d10, d11, [x1], #16
102	stp	d12, d13, [x1], #16
103	stp	d14, d15, [x1], #16
104	stp	x19, x20, [x1], #16
105	stp	x21, x22, [x1], #16
106	stp	x23, x24, [x1], #16
107	stp	x25, x26, [x1], #16
108	stp	x27, x28, [x1], #16
109
110	// |func| is required to preserve x29, the frame pointer. We cannot load
111	// random values into x29 (see comment above), so compare it against the
112	// expected value and zero the field of |state| if corrupted.
113	mov	x9, sp
114	cmp	x29, x9
115	b.eq	.Lx29_ok
116	str	xzr, [x1]
117
118.Lx29_ok:
119	// Restore callee-saved registers.
120	ldp	d8, d9, [sp, #16]
121	ldp	d10, d11, [sp, #32]
122	ldp	d12, d13, [sp, #48]
123	ldp	d14, d15, [sp, #64]
124	ldp	x19, x20, [sp, #80]
125	ldp	x21, x22, [sp, #96]
126	ldp	x23, x24, [sp, #112]
127	ldp	x25, x26, [sp, #128]
128	ldp	x27, x28, [sp, #144]
129
130	ldp	x29, x30, [sp], #176
131	ret
132.size	abi_test_trampoline,.-abi_test_trampoline
133.type	abi_test_clobber_x0, %function
134.globl	abi_test_clobber_x0
135.hidden	abi_test_clobber_x0
136.align	4
137abi_test_clobber_x0:
138	mov	x0, xzr
139	ret
140.size	abi_test_clobber_x0,.-abi_test_clobber_x0
141.type	abi_test_clobber_x1, %function
142.globl	abi_test_clobber_x1
143.hidden	abi_test_clobber_x1
144.align	4
145abi_test_clobber_x1:
146	mov	x1, xzr
147	ret
148.size	abi_test_clobber_x1,.-abi_test_clobber_x1
149.type	abi_test_clobber_x2, %function
150.globl	abi_test_clobber_x2
151.hidden	abi_test_clobber_x2
152.align	4
153abi_test_clobber_x2:
154	mov	x2, xzr
155	ret
156.size	abi_test_clobber_x2,.-abi_test_clobber_x2
157.type	abi_test_clobber_x3, %function
158.globl	abi_test_clobber_x3
159.hidden	abi_test_clobber_x3
160.align	4
161abi_test_clobber_x3:
162	mov	x3, xzr
163	ret
164.size	abi_test_clobber_x3,.-abi_test_clobber_x3
165.type	abi_test_clobber_x4, %function
166.globl	abi_test_clobber_x4
167.hidden	abi_test_clobber_x4
168.align	4
169abi_test_clobber_x4:
170	mov	x4, xzr
171	ret
172.size	abi_test_clobber_x4,.-abi_test_clobber_x4
173.type	abi_test_clobber_x5, %function
174.globl	abi_test_clobber_x5
175.hidden	abi_test_clobber_x5
176.align	4
177abi_test_clobber_x5:
178	mov	x5, xzr
179	ret
180.size	abi_test_clobber_x5,.-abi_test_clobber_x5
181.type	abi_test_clobber_x6, %function
182.globl	abi_test_clobber_x6
183.hidden	abi_test_clobber_x6
184.align	4
185abi_test_clobber_x6:
186	mov	x6, xzr
187	ret
188.size	abi_test_clobber_x6,.-abi_test_clobber_x6
189.type	abi_test_clobber_x7, %function
190.globl	abi_test_clobber_x7
191.hidden	abi_test_clobber_x7
192.align	4
193abi_test_clobber_x7:
194	mov	x7, xzr
195	ret
196.size	abi_test_clobber_x7,.-abi_test_clobber_x7
197.type	abi_test_clobber_x8, %function
198.globl	abi_test_clobber_x8
199.hidden	abi_test_clobber_x8
200.align	4
201abi_test_clobber_x8:
202	mov	x8, xzr
203	ret
204.size	abi_test_clobber_x8,.-abi_test_clobber_x8
205.type	abi_test_clobber_x9, %function
206.globl	abi_test_clobber_x9
207.hidden	abi_test_clobber_x9
208.align	4
209abi_test_clobber_x9:
210	mov	x9, xzr
211	ret
212.size	abi_test_clobber_x9,.-abi_test_clobber_x9
213.type	abi_test_clobber_x10, %function
214.globl	abi_test_clobber_x10
215.hidden	abi_test_clobber_x10
216.align	4
217abi_test_clobber_x10:
218	mov	x10, xzr
219	ret
220.size	abi_test_clobber_x10,.-abi_test_clobber_x10
221.type	abi_test_clobber_x11, %function
222.globl	abi_test_clobber_x11
223.hidden	abi_test_clobber_x11
224.align	4
225abi_test_clobber_x11:
226	mov	x11, xzr
227	ret
228.size	abi_test_clobber_x11,.-abi_test_clobber_x11
229.type	abi_test_clobber_x12, %function
230.globl	abi_test_clobber_x12
231.hidden	abi_test_clobber_x12
232.align	4
233abi_test_clobber_x12:
234	mov	x12, xzr
235	ret
236.size	abi_test_clobber_x12,.-abi_test_clobber_x12
237.type	abi_test_clobber_x13, %function
238.globl	abi_test_clobber_x13
239.hidden	abi_test_clobber_x13
240.align	4
241abi_test_clobber_x13:
242	mov	x13, xzr
243	ret
244.size	abi_test_clobber_x13,.-abi_test_clobber_x13
245.type	abi_test_clobber_x14, %function
246.globl	abi_test_clobber_x14
247.hidden	abi_test_clobber_x14
248.align	4
249abi_test_clobber_x14:
250	mov	x14, xzr
251	ret
252.size	abi_test_clobber_x14,.-abi_test_clobber_x14
253.type	abi_test_clobber_x15, %function
254.globl	abi_test_clobber_x15
255.hidden	abi_test_clobber_x15
256.align	4
257abi_test_clobber_x15:
258	mov	x15, xzr
259	ret
260.size	abi_test_clobber_x15,.-abi_test_clobber_x15
261.type	abi_test_clobber_x16, %function
262.globl	abi_test_clobber_x16
263.hidden	abi_test_clobber_x16
264.align	4
265abi_test_clobber_x16:
266	mov	x16, xzr
267	ret
268.size	abi_test_clobber_x16,.-abi_test_clobber_x16
269.type	abi_test_clobber_x17, %function
270.globl	abi_test_clobber_x17
271.hidden	abi_test_clobber_x17
272.align	4
273abi_test_clobber_x17:
274	mov	x17, xzr
275	ret
276.size	abi_test_clobber_x17,.-abi_test_clobber_x17
277.type	abi_test_clobber_x19, %function
278.globl	abi_test_clobber_x19
279.hidden	abi_test_clobber_x19
280.align	4
281abi_test_clobber_x19:
282	mov	x19, xzr
283	ret
284.size	abi_test_clobber_x19,.-abi_test_clobber_x19
285.type	abi_test_clobber_x20, %function
286.globl	abi_test_clobber_x20
287.hidden	abi_test_clobber_x20
288.align	4
289abi_test_clobber_x20:
290	mov	x20, xzr
291	ret
292.size	abi_test_clobber_x20,.-abi_test_clobber_x20
293.type	abi_test_clobber_x21, %function
294.globl	abi_test_clobber_x21
295.hidden	abi_test_clobber_x21
296.align	4
297abi_test_clobber_x21:
298	mov	x21, xzr
299	ret
300.size	abi_test_clobber_x21,.-abi_test_clobber_x21
301.type	abi_test_clobber_x22, %function
302.globl	abi_test_clobber_x22
303.hidden	abi_test_clobber_x22
304.align	4
305abi_test_clobber_x22:
306	mov	x22, xzr
307	ret
308.size	abi_test_clobber_x22,.-abi_test_clobber_x22
309.type	abi_test_clobber_x23, %function
310.globl	abi_test_clobber_x23
311.hidden	abi_test_clobber_x23
312.align	4
313abi_test_clobber_x23:
314	mov	x23, xzr
315	ret
316.size	abi_test_clobber_x23,.-abi_test_clobber_x23
317.type	abi_test_clobber_x24, %function
318.globl	abi_test_clobber_x24
319.hidden	abi_test_clobber_x24
320.align	4
321abi_test_clobber_x24:
322	mov	x24, xzr
323	ret
324.size	abi_test_clobber_x24,.-abi_test_clobber_x24
325.type	abi_test_clobber_x25, %function
326.globl	abi_test_clobber_x25
327.hidden	abi_test_clobber_x25
328.align	4
329abi_test_clobber_x25:
330	mov	x25, xzr
331	ret
332.size	abi_test_clobber_x25,.-abi_test_clobber_x25
333.type	abi_test_clobber_x26, %function
334.globl	abi_test_clobber_x26
335.hidden	abi_test_clobber_x26
336.align	4
337abi_test_clobber_x26:
338	mov	x26, xzr
339	ret
340.size	abi_test_clobber_x26,.-abi_test_clobber_x26
341.type	abi_test_clobber_x27, %function
342.globl	abi_test_clobber_x27
343.hidden	abi_test_clobber_x27
344.align	4
345abi_test_clobber_x27:
346	mov	x27, xzr
347	ret
348.size	abi_test_clobber_x27,.-abi_test_clobber_x27
349.type	abi_test_clobber_x28, %function
350.globl	abi_test_clobber_x28
351.hidden	abi_test_clobber_x28
352.align	4
353abi_test_clobber_x28:
354	mov	x28, xzr
355	ret
356.size	abi_test_clobber_x28,.-abi_test_clobber_x28
357.type	abi_test_clobber_x29, %function
358.globl	abi_test_clobber_x29
359.hidden	abi_test_clobber_x29
360.align	4
361abi_test_clobber_x29:
362	mov	x29, xzr
363	ret
364.size	abi_test_clobber_x29,.-abi_test_clobber_x29
365.type	abi_test_clobber_d0, %function
366.globl	abi_test_clobber_d0
367.hidden	abi_test_clobber_d0
368.align	4
369abi_test_clobber_d0:
370	fmov	d0, xzr
371	ret
372.size	abi_test_clobber_d0,.-abi_test_clobber_d0
373.type	abi_test_clobber_d1, %function
374.globl	abi_test_clobber_d1
375.hidden	abi_test_clobber_d1
376.align	4
377abi_test_clobber_d1:
378	fmov	d1, xzr
379	ret
380.size	abi_test_clobber_d1,.-abi_test_clobber_d1
381.type	abi_test_clobber_d2, %function
382.globl	abi_test_clobber_d2
383.hidden	abi_test_clobber_d2
384.align	4
385abi_test_clobber_d2:
386	fmov	d2, xzr
387	ret
388.size	abi_test_clobber_d2,.-abi_test_clobber_d2
389.type	abi_test_clobber_d3, %function
390.globl	abi_test_clobber_d3
391.hidden	abi_test_clobber_d3
392.align	4
393abi_test_clobber_d3:
394	fmov	d3, xzr
395	ret
396.size	abi_test_clobber_d3,.-abi_test_clobber_d3
397.type	abi_test_clobber_d4, %function
398.globl	abi_test_clobber_d4
399.hidden	abi_test_clobber_d4
400.align	4
401abi_test_clobber_d4:
402	fmov	d4, xzr
403	ret
404.size	abi_test_clobber_d4,.-abi_test_clobber_d4
405.type	abi_test_clobber_d5, %function
406.globl	abi_test_clobber_d5
407.hidden	abi_test_clobber_d5
408.align	4
409abi_test_clobber_d5:
410	fmov	d5, xzr
411	ret
412.size	abi_test_clobber_d5,.-abi_test_clobber_d5
413.type	abi_test_clobber_d6, %function
414.globl	abi_test_clobber_d6
415.hidden	abi_test_clobber_d6
416.align	4
417abi_test_clobber_d6:
418	fmov	d6, xzr
419	ret
420.size	abi_test_clobber_d6,.-abi_test_clobber_d6
421.type	abi_test_clobber_d7, %function
422.globl	abi_test_clobber_d7
423.hidden	abi_test_clobber_d7
424.align	4
425abi_test_clobber_d7:
426	fmov	d7, xzr
427	ret
428.size	abi_test_clobber_d7,.-abi_test_clobber_d7
429.type	abi_test_clobber_d8, %function
430.globl	abi_test_clobber_d8
431.hidden	abi_test_clobber_d8
432.align	4
433abi_test_clobber_d8:
434	fmov	d8, xzr
435	ret
436.size	abi_test_clobber_d8,.-abi_test_clobber_d8
437.type	abi_test_clobber_d9, %function
438.globl	abi_test_clobber_d9
439.hidden	abi_test_clobber_d9
440.align	4
441abi_test_clobber_d9:
442	fmov	d9, xzr
443	ret
444.size	abi_test_clobber_d9,.-abi_test_clobber_d9
445.type	abi_test_clobber_d10, %function
446.globl	abi_test_clobber_d10
447.hidden	abi_test_clobber_d10
448.align	4
449abi_test_clobber_d10:
450	fmov	d10, xzr
451	ret
452.size	abi_test_clobber_d10,.-abi_test_clobber_d10
453.type	abi_test_clobber_d11, %function
454.globl	abi_test_clobber_d11
455.hidden	abi_test_clobber_d11
456.align	4
457abi_test_clobber_d11:
458	fmov	d11, xzr
459	ret
460.size	abi_test_clobber_d11,.-abi_test_clobber_d11
461.type	abi_test_clobber_d12, %function
462.globl	abi_test_clobber_d12
463.hidden	abi_test_clobber_d12
464.align	4
465abi_test_clobber_d12:
466	fmov	d12, xzr
467	ret
468.size	abi_test_clobber_d12,.-abi_test_clobber_d12
469.type	abi_test_clobber_d13, %function
470.globl	abi_test_clobber_d13
471.hidden	abi_test_clobber_d13
472.align	4
473abi_test_clobber_d13:
474	fmov	d13, xzr
475	ret
476.size	abi_test_clobber_d13,.-abi_test_clobber_d13
477.type	abi_test_clobber_d14, %function
478.globl	abi_test_clobber_d14
479.hidden	abi_test_clobber_d14
480.align	4
481abi_test_clobber_d14:
482	fmov	d14, xzr
483	ret
484.size	abi_test_clobber_d14,.-abi_test_clobber_d14
485.type	abi_test_clobber_d15, %function
486.globl	abi_test_clobber_d15
487.hidden	abi_test_clobber_d15
488.align	4
489abi_test_clobber_d15:
490	fmov	d15, xzr
491	ret
492.size	abi_test_clobber_d15,.-abi_test_clobber_d15
493.type	abi_test_clobber_d16, %function
494.globl	abi_test_clobber_d16
495.hidden	abi_test_clobber_d16
496.align	4
497abi_test_clobber_d16:
498	fmov	d16, xzr
499	ret
500.size	abi_test_clobber_d16,.-abi_test_clobber_d16
501.type	abi_test_clobber_d17, %function
502.globl	abi_test_clobber_d17
503.hidden	abi_test_clobber_d17
504.align	4
505abi_test_clobber_d17:
506	fmov	d17, xzr
507	ret
508.size	abi_test_clobber_d17,.-abi_test_clobber_d17
509.type	abi_test_clobber_d18, %function
510.globl	abi_test_clobber_d18
511.hidden	abi_test_clobber_d18
512.align	4
513abi_test_clobber_d18:
514	fmov	d18, xzr
515	ret
516.size	abi_test_clobber_d18,.-abi_test_clobber_d18
517.type	abi_test_clobber_d19, %function
518.globl	abi_test_clobber_d19
519.hidden	abi_test_clobber_d19
520.align	4
521abi_test_clobber_d19:
522	fmov	d19, xzr
523	ret
524.size	abi_test_clobber_d19,.-abi_test_clobber_d19
525.type	abi_test_clobber_d20, %function
526.globl	abi_test_clobber_d20
527.hidden	abi_test_clobber_d20
528.align	4
529abi_test_clobber_d20:
530	fmov	d20, xzr
531	ret
532.size	abi_test_clobber_d20,.-abi_test_clobber_d20
533.type	abi_test_clobber_d21, %function
534.globl	abi_test_clobber_d21
535.hidden	abi_test_clobber_d21
536.align	4
537abi_test_clobber_d21:
538	fmov	d21, xzr
539	ret
540.size	abi_test_clobber_d21,.-abi_test_clobber_d21
541.type	abi_test_clobber_d22, %function
542.globl	abi_test_clobber_d22
543.hidden	abi_test_clobber_d22
544.align	4
545abi_test_clobber_d22:
546	fmov	d22, xzr
547	ret
548.size	abi_test_clobber_d22,.-abi_test_clobber_d22
549.type	abi_test_clobber_d23, %function
550.globl	abi_test_clobber_d23
551.hidden	abi_test_clobber_d23
552.align	4
553abi_test_clobber_d23:
554	fmov	d23, xzr
555	ret
556.size	abi_test_clobber_d23,.-abi_test_clobber_d23
557.type	abi_test_clobber_d24, %function
558.globl	abi_test_clobber_d24
559.hidden	abi_test_clobber_d24
560.align	4
561abi_test_clobber_d24:
562	fmov	d24, xzr
563	ret
564.size	abi_test_clobber_d24,.-abi_test_clobber_d24
565.type	abi_test_clobber_d25, %function
566.globl	abi_test_clobber_d25
567.hidden	abi_test_clobber_d25
568.align	4
569abi_test_clobber_d25:
570	fmov	d25, xzr
571	ret
572.size	abi_test_clobber_d25,.-abi_test_clobber_d25
573.type	abi_test_clobber_d26, %function
574.globl	abi_test_clobber_d26
575.hidden	abi_test_clobber_d26
576.align	4
577abi_test_clobber_d26:
578	fmov	d26, xzr
579	ret
580.size	abi_test_clobber_d26,.-abi_test_clobber_d26
581.type	abi_test_clobber_d27, %function
582.globl	abi_test_clobber_d27
583.hidden	abi_test_clobber_d27
584.align	4
585abi_test_clobber_d27:
586	fmov	d27, xzr
587	ret
588.size	abi_test_clobber_d27,.-abi_test_clobber_d27
589.type	abi_test_clobber_d28, %function
590.globl	abi_test_clobber_d28
591.hidden	abi_test_clobber_d28
592.align	4
593abi_test_clobber_d28:
594	fmov	d28, xzr
595	ret
596.size	abi_test_clobber_d28,.-abi_test_clobber_d28
597.type	abi_test_clobber_d29, %function
598.globl	abi_test_clobber_d29
599.hidden	abi_test_clobber_d29
600.align	4
601abi_test_clobber_d29:
602	fmov	d29, xzr
603	ret
604.size	abi_test_clobber_d29,.-abi_test_clobber_d29
605.type	abi_test_clobber_d30, %function
606.globl	abi_test_clobber_d30
607.hidden	abi_test_clobber_d30
608.align	4
609abi_test_clobber_d30:
610	fmov	d30, xzr
611	ret
612.size	abi_test_clobber_d30,.-abi_test_clobber_d30
613.type	abi_test_clobber_d31, %function
614.globl	abi_test_clobber_d31
615.hidden	abi_test_clobber_d31
616.align	4
617abi_test_clobber_d31:
618	fmov	d31, xzr
619	ret
620.size	abi_test_clobber_d31,.-abi_test_clobber_d31
621.type	abi_test_clobber_v8_upper, %function
622.globl	abi_test_clobber_v8_upper
623.hidden	abi_test_clobber_v8_upper
624.align	4
625abi_test_clobber_v8_upper:
626	fmov	v8.d[1], xzr
627	ret
628.size	abi_test_clobber_v8_upper,.-abi_test_clobber_v8_upper
629.type	abi_test_clobber_v9_upper, %function
630.globl	abi_test_clobber_v9_upper
631.hidden	abi_test_clobber_v9_upper
632.align	4
633abi_test_clobber_v9_upper:
634	fmov	v9.d[1], xzr
635	ret
636.size	abi_test_clobber_v9_upper,.-abi_test_clobber_v9_upper
637.type	abi_test_clobber_v10_upper, %function
638.globl	abi_test_clobber_v10_upper
639.hidden	abi_test_clobber_v10_upper
640.align	4
641abi_test_clobber_v10_upper:
642	fmov	v10.d[1], xzr
643	ret
644.size	abi_test_clobber_v10_upper,.-abi_test_clobber_v10_upper
645.type	abi_test_clobber_v11_upper, %function
646.globl	abi_test_clobber_v11_upper
647.hidden	abi_test_clobber_v11_upper
648.align	4
649abi_test_clobber_v11_upper:
650	fmov	v11.d[1], xzr
651	ret
652.size	abi_test_clobber_v11_upper,.-abi_test_clobber_v11_upper
653.type	abi_test_clobber_v12_upper, %function
654.globl	abi_test_clobber_v12_upper
655.hidden	abi_test_clobber_v12_upper
656.align	4
657abi_test_clobber_v12_upper:
658	fmov	v12.d[1], xzr
659	ret
660.size	abi_test_clobber_v12_upper,.-abi_test_clobber_v12_upper
661.type	abi_test_clobber_v13_upper, %function
662.globl	abi_test_clobber_v13_upper
663.hidden	abi_test_clobber_v13_upper
664.align	4
665abi_test_clobber_v13_upper:
666	fmov	v13.d[1], xzr
667	ret
668.size	abi_test_clobber_v13_upper,.-abi_test_clobber_v13_upper
669.type	abi_test_clobber_v14_upper, %function
670.globl	abi_test_clobber_v14_upper
671.hidden	abi_test_clobber_v14_upper
672.align	4
673abi_test_clobber_v14_upper:
674	fmov	v14.d[1], xzr
675	ret
676.size	abi_test_clobber_v14_upper,.-abi_test_clobber_v14_upper
677.type	abi_test_clobber_v15_upper, %function
678.globl	abi_test_clobber_v15_upper
679.hidden	abi_test_clobber_v15_upper
680.align	4
681abi_test_clobber_v15_upper:
682	fmov	v15.d[1], xzr
683	ret
684.size	abi_test_clobber_v15_upper,.-abi_test_clobber_v15_upper
685#endif
686#endif  // !OPENSSL_NO_ASM
687