David Brazdil | 0f672f6 | 2019-12-10 10:32:29 +0000 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 2 | /* |
| 3 | * Copyright (C) 2013 Regents of the University of California |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 4 | */ |
| 5 | |
| 6 | #ifndef _ASM_RISCV_STRING_H |
| 7 | #define _ASM_RISCV_STRING_H |
| 8 | |
| 9 | #include <linux/types.h> |
| 10 | #include <linux/linkage.h> |
| 11 | |
| 12 | #define __HAVE_ARCH_MEMSET |
| 13 | extern asmlinkage void *memset(void *, int, size_t); |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 14 | extern asmlinkage void *__memset(void *, int, size_t); |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 15 | |
| 16 | #define __HAVE_ARCH_MEMCPY |
| 17 | extern asmlinkage void *memcpy(void *, const void *, size_t); |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 18 | extern asmlinkage void *__memcpy(void *, const void *, size_t); |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 19 | |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 20 | /* For those files which don't want to check by kasan. */ |
| 21 | #if defined(CONFIG_KASAN) && !defined(__SANITIZE_ADDRESS__) |
| 22 | |
| 23 | #define memcpy(dst, src, len) __memcpy(dst, src, len) |
| 24 | #define memset(s, c, n) __memset(s, c, n) |
| 25 | |
| 26 | #endif |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 27 | #endif /* _ASM_RISCV_STRING_H */ |