xref: /DragonOS/kernel/src/libs/unistd.c (revision c566df451ce6dbf2af684333e68b39fdfff86498)
1 #include <common/unistd.h>
2 #include <common/glib.h>
3 
4 
5 void swab(void *restrict src, void *restrict dest, ssize_t nbytes)
6 {
7     unsigned char buf[32];
8     char *_src = src;
9     char *_dest = dest;
10     uint32_t transfer;
11     for (; nbytes > 0; nbytes -= transfer)
12     {
13         transfer = (nbytes > 32) ? 32 : nbytes;
14         memcpy(buf, _src, transfer);
15         memcpy(_src, _dest, transfer);
16         memcpy(_dest, buf, transfer);
17         _src += transfer;
18         _dest += transfer;
19     }
20 }