xref: /minix3/common/lib/libc/arch/vax/gen/bswap64.S (revision f14fb602092e015ff630df58e17c2a9cd57d29b3)
1b6cbf720SGianluca Guida/* Written by Anders Magnusson. Public Domain */
2b6cbf720SGianluca Guida
3b6cbf720SGianluca Guida#include <machine/asm.h>
4b6cbf720SGianluca Guida
5*f14fb602SLionel SambucRCSID("$NetBSD: bswap64.S,v 1.3 2011/01/25 04:45:28 matt Exp $")
6*f14fb602SLionel Sambuc
7b6cbf720SGianluca GuidaENTRY(bswap64, 0)
8b6cbf720SGianluca Guida        movq 4(%ap),%r3
9b6cbf720SGianluca Guida	rotl $-8,%r3,%r1
10b6cbf720SGianluca Guida	insv %r1,$16,$8,%r1
11b6cbf720SGianluca Guida	rotl $8,%r3,%r2
12b6cbf720SGianluca Guida	movb %r2,%r1
13b6cbf720SGianluca Guida	rotl $-8,%r4,%r0
14b6cbf720SGianluca Guida	insv %r0,$16,$8,%r0
15b6cbf720SGianluca Guida	rotl $8,%r4,%r2
16b6cbf720SGianluca Guida	movb %r2,%r0
17b6cbf720SGianluca Guida	ret
18*f14fb602SLionel SambucEND(bswap64)
19