1/* 2 * This file is in public domain. 3 * Written by Dmitry Chagin <dchagin@FreeBSD.org> 4 */ 5 6 .text 7 8 .globl xregs_banks_max 9 .type xregs_banks_max, @function 10xregs_banks_max: 11 mov x0, #0 12 ret 13 14 .size xregs_banks_max, . - xregs_banks_max 15 16 17 .globl cpu_to_vfp 18 .type cpu_to_vfp, @function 19cpu_to_vfp: 20 stp q0, q1, [x0, #( 0 * 16)] 21 stp q2, q3, [x0, #( 2 * 16)] 22 stp q4, q5, [x0, #( 4 * 16)] 23 stp q6, q7, [x0, #( 6 * 16)] 24 stp q8, q9, [x0, #( 8 * 16)] 25 stp q10, q11, [x0, #(10 * 16)] 26 stp q12, q13, [x0, #(12 * 16)] 27 stp q14, q15, [x0, #(14 * 16)] 28 stp q16, q17, [x0, #(16 * 16)] 29 stp q18, q19, [x0, #(18 * 16)] 30 stp q20, q21, [x0, #(20 * 16)] 31 stp q22, q23, [x0, #(22 * 16)] 32 stp q24, q25, [x0, #(24 * 16)] 33 stp q26, q27, [x0, #(26 * 16)] 34 stp q28, q29, [x0, #(28 * 16)] 35 stp q30, q31, [x0, #(30 * 16)] 36 ret 37 38 .size cpu_to_vfp, . - cpu_to_vfp 39 40 41 .globl vfp_to_cpu 42 .type vfp_to_cpu, @function 43vfp_to_cpu: 44 ldp q0, q1, [x0, #( 0 * 16)] 45 ldp q2, q3, [x0, #( 2 * 16)] 46 ldp q4, q5, [x0, #( 4 * 16)] 47 ldp q6, q7, [x0, #( 6 * 16)] 48 ldp q8, q9, [x0, #( 8 * 16)] 49 ldp q10, q11, [x0, #(10 * 16)] 50 ldp q12, q13, [x0, #(12 * 16)] 51 ldp q14, q15, [x0, #(14 * 16)] 52 ldp q16, q17, [x0, #(16 * 16)] 53 ldp q18, q19, [x0, #(18 * 16)] 54 ldp q20, q21, [x0, #(20 * 16)] 55 ldp q22, q23, [x0, #(22 * 16)] 56 ldp q24, q25, [x0, #(24 * 16)] 57 ldp q26, q27, [x0, #(26 * 16)] 58 ldp q28, q29, [x0, #(28 * 16)] 59 ldp q30, q31, [x0, #(30 * 16)] 60 ret 61 62 .size vfp_to_cpu, . - vfp_to_cpu 63 64 .section .note.GNU-stack,"",@progbits 65