/
githubmirror
/
efifs
Обзор
Документация
Войти
/
githubmirror
/
efifs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
CompilerIntrinsicsLib/memmove.c
34 строки
734 B
Pete Batard
fix EDK2 compilation
10 май 2019, 14:00
Не верифицирован
10 май 2019, 14:00
5c954da
Код
Авторство
О чём код?
//------------------------------------------------------------------------------ // // Copyright (c) 2019, Pete Batard. All rights reserved. // // SPDX-License-Identifier: BSD-2-Clause-Patent // //------------------------------------------------------------------------------ #if defined(_M_X64) typedef unsigned __int64 size_t; #else typedef unsigned __int32 size_t; #endif void* memmove(void *, const void *, size_t); #pragma intrinsic(memmove) #pragma function(memmove) void* memmove(void *dest, const void *src, size_t n) { unsigned char *d = dest; unsigned char const *s = src; if (d < s) { while (n--) *d++ = *s++; } else { d += n; s += n; while (n--) *--d = *--s; } return dest; }