aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sh/include/asm/unaligned.h
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2021-05-08 00:07:48 +0200
committerArnd Bergmann <arnd@arndb.de>2021-05-10 17:50:47 +0200
commit94528b70781a4c63db9e1309d4cdbcaef2387904 (patch)
tree4a3660f6628bc88b3d1bcd6cc05202c782d8d24a /arch/sh/include/asm/unaligned.h
parentopenrisc: always use unaligned-struct header (diff)
downloadlinux-dev-94528b70781a4c63db9e1309d4cdbcaef2387904.tar.xz
linux-dev-94528b70781a4c63db9e1309d4cdbcaef2387904.zip
sh: remove unaligned access for sh4a
Unlike every other architecture, sh4a uses an inline asm implementation for get_unaligned(). I have shown that this produces better object code than the asm-generic version. However, there are very few users of arch/sh/ overall, and most of those seem to use sh4 rather than sh4a CPU cores, so it seems not worth keeping the complexity in the architecture independent code. Change over to the generic version to allow simplifying that in a follow-up patch. If there are sh4a users that want the best performance, it would probably be best to add support for the movua instruction in gcc itself, as this would not just help get_unaligned() callers but any code that accesses a __packed variable in user space or kernel. Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to '')
-rw-r--r--arch/sh/include/asm/unaligned.h13
1 files changed, 0 insertions, 13 deletions
diff --git a/arch/sh/include/asm/unaligned.h b/arch/sh/include/asm/unaligned.h
deleted file mode 100644
index 0c92e2c73af4..000000000000
--- a/arch/sh/include/asm/unaligned.h
+++ /dev/null
@@ -1,13 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0 */
-#ifndef _ASM_SH_UNALIGNED_H
-#define _ASM_SH_UNALIGNED_H
-
-#ifdef CONFIG_CPU_SH4A
-/* SH-4A can handle unaligned loads in a relatively neutered fashion. */
-#include <asm/unaligned-sh4a.h>
-#else
-/* Otherwise, SH can't handle unaligned accesses. */
-#include <asm-generic/unaligned.h>
-#endif
-
-#endif /* _ASM_SH_UNALIGNED_H */