2023-05-30 08:18:57 +00:00
|
|
|
/*
|
|
|
|
* This file is in public domain.
|
|
|
|
* Written by Dmitry Chagin <dchagin@FreeBSD.org>
|
|
|
|
*
|
|
|
|
* $FreeBSD$
|
|
|
|
*/
|
|
|
|
|
2023-06-03 17:11:44 +00:00
|
|
|
.global cpu_to_xregs
|
|
|
|
.type cpu_to_xregs, @function
|
|
|
|
cpu_to_xregs:
|
2023-05-30 08:18:57 +00:00
|
|
|
movdqu %xmm0, (%rdi)
|
|
|
|
movdqu %xmm1, 1 * 16(%rdi)
|
|
|
|
movdqu %xmm2, 2 * 16(%rdi)
|
|
|
|
movdqu %xmm3, 3 * 16(%rdi)
|
|
|
|
movdqu %xmm4, 4 * 16(%rdi)
|
|
|
|
movdqu %xmm5, 5 * 16(%rdi)
|
|
|
|
movdqu %xmm6, 6 * 16(%rdi)
|
|
|
|
movdqu %xmm7, 7 * 16(%rdi)
|
|
|
|
movdqu %xmm8, 8 * 16(%rdi)
|
|
|
|
movdqu %xmm9, 9 * 16(%rdi)
|
|
|
|
movdqu %xmm10, 10 * 16(%rdi)
|
|
|
|
movdqu %xmm11, 11 * 16(%rdi)
|
|
|
|
movdqu %xmm12, 12 * 16(%rdi)
|
|
|
|
movdqu %xmm13, 13 * 16(%rdi)
|
|
|
|
movdqu %xmm14, 14 * 16(%rdi)
|
|
|
|
movdqu %xmm15, 15 * 16(%rdi)
|
|
|
|
retq
|
|
|
|
|
2023-06-03 17:11:44 +00:00
|
|
|
.size cpu_to_xregs, . - cpu_to_xregs
|
2023-05-30 08:18:57 +00:00
|
|
|
|
|
|
|
|
2023-06-03 17:11:44 +00:00
|
|
|
.global xregs_to_cpu
|
|
|
|
.type xregs_to_cpu, @function
|
|
|
|
xregs_to_cpu:
|
2023-05-30 08:18:57 +00:00
|
|
|
movdqu (%rdi), %xmm0
|
|
|
|
movdqu 1 * 16(%rdi), %xmm1
|
|
|
|
movdqu 2 * 16(%rdi), %xmm2
|
|
|
|
movdqu 3 * 16(%rdi), %xmm3
|
|
|
|
movdqu 4 * 16(%rdi), %xmm4
|
|
|
|
movdqu 5 * 16(%rdi), %xmm5
|
|
|
|
movdqu 6 * 16(%rdi), %xmm6
|
|
|
|
movdqu 7 * 16(%rdi), %xmm7
|
|
|
|
movdqu 8 * 16(%rdi), %xmm8
|
|
|
|
movdqu 9 * 16(%rdi), %xmm9
|
|
|
|
movdqu 10 * 16(%rdi), %xmm10
|
|
|
|
movdqu 11 * 16(%rdi), %xmm11
|
|
|
|
movdqu 12 * 16(%rdi), %xmm12
|
|
|
|
movdqu 13 * 16(%rdi), %xmm13
|
|
|
|
movdqu 14 * 16(%rdi), %xmm14
|
|
|
|
movdqu 15 * 16(%rdi), %xmm15
|
|
|
|
retq
|
|
|
|
|
2023-06-03 17:11:44 +00:00
|
|
|
.size xregs_to_cpu, . - xregs_to_cpu
|
2023-05-30 08:18:57 +00:00
|
|
|
|
|
|
|
.section .note.GNU-stack,"",@progbits
|