浏览代码

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: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle 16 年之前
父节点
当前提交
8d2d91e86b
共有 1 个文件被更改,包括 4 次插入4 次删除
  1. 4 4
      include/asm-mips/uaccess.h

+ 4 - 4
include/asm-mips/uaccess.h

@@ -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) {						\