Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8d2d91e8 authored by Ralf Baechle's avatar Ralf Baechle
Browse files

MIPS: Optimize get_user and put_user for 64-bit



A long for the error value leads to unnecessary sign extensions.  This
patch shrinks an ip27_defconfig kernel build with gcc 4.3.0 by 2256 bytes.

Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent b6263ff2
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -224,7 +224,7 @@ do { \

#define __get_user_nocheck(x, ptr, size)				\
({									\
	long __gu_err;							\
	int __gu_err;							\
									\
	__get_user_common((x), size, ptr);				\
	__gu_err;							\
@@ -232,7 +232,7 @@ do { \

#define __get_user_check(x, ptr, size)					\
({									\
	long __gu_err = -EFAULT;					\
	int __gu_err = -EFAULT;						\
	const __typeof__(*(ptr)) __user * __gu_ptr = (ptr);		\
									\
	if (likely(access_ok(VERIFY_READ,  __gu_ptr, size)))		\
@@ -304,7 +304,7 @@ do { \
#define __put_user_nocheck(x, ptr, size)				\
({									\
	__typeof__(*(ptr)) __pu_val;					\
	long __pu_err = 0;						\
	int __pu_err = 0;						\
									\
	__pu_val = (x);							\
	switch (size) {							\
@@ -321,7 +321,7 @@ do { \
({									\
	__typeof__(*(ptr)) __user *__pu_addr = (ptr);			\
	__typeof__(*(ptr)) __pu_val = (x);				\
	long __pu_err = -EFAULT;					\
	int __pu_err = -EFAULT;						\
									\
	if (likely(access_ok(VERIFY_WRITE,  __pu_addr, size))) {	\
		switch (size) {						\