2007-05-15 19:38:23

by Al Viro

[permalink] [raw]
Subject: [PATCH] [m32r] __xchg() should be always_inline


it depends on elimination of unreachable branches in switch (by object
size), so we must declare it always_inline

Signed-off-by: Al Viro <[email protected]>
---
include/asm-m32r/system.h | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/include/asm-m32r/system.h b/include/asm-m32r/system.h
index b291b2f..8ee73d3 100644
--- a/include/asm-m32r/system.h
+++ b/include/asm-m32r/system.h
@@ -10,6 +10,7 @@
* Copyright (C) 2004, 2006 Hirokazu Takata <takata at linux-m32r.org>
*/

+#include <linux/compiler.h>
#include <asm/assembler.h>

#ifdef __KERNEL__
@@ -154,7 +155,7 @@ extern void __xchg_called_with_bad_pointer(void);
#define DCACHE_CLEAR(reg0, reg1, addr)
#endif /* CONFIG_CHIP_M32700_TS1 */

-static inline unsigned long
+static __always_inline unsigned long
__xchg(unsigned long x, volatile void * ptr, int size)
{
unsigned long flags;
--
1.5.0-rc2.GIT



2007-05-16 01:37:28

by Hirokazu Takata

[permalink] [raw]
Subject: Re: [PATCH] [m32r] __xchg() should be always_inline

Thank you.

Acked-by: Hirokazu Takata <[email protected]>

From: Al Viro <[email protected]>
Subject: [PATCH] [m32r] __xchg() should be always_inline
Date: Tue, 15 May 2007 20:37:00 +0100
>
> it depends on elimination of unreachable branches in switch (by object
> size), so we must declare it always_inline
>
> Signed-off-by: Al Viro <[email protected]>
> ---
> include/asm-m32r/system.h | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/include/asm-m32r/system.h b/include/asm-m32r/system.h
> index b291b2f..8ee73d3 100644
> --- a/include/asm-m32r/system.h
> +++ b/include/asm-m32r/system.h
> @@ -10,6 +10,7 @@
> * Copyright (C) 2004, 2006 Hirokazu Takata <takata at linux-m32r.org>
> */
>
> +#include <linux/compiler.h>
> #include <asm/assembler.h>
>
> #ifdef __KERNEL__
> @@ -154,7 +155,7 @@ extern void __xchg_called_with_bad_pointer(void);
> #define DCACHE_CLEAR(reg0, reg1, addr)
> #endif /* CONFIG_CHIP_M32700_TS1 */
>
> -static inline unsigned long
> +static __always_inline unsigned long
> __xchg(unsigned long x, volatile void * ptr, int size)
> {
> unsigned long flags;
> --
> 1.5.0-rc2.GIT
>
>