lkml.org 
[lkml]   [2008]   [Jan]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[patch 5/5] PowerPC: switch to generic WARN_ON / BUG_ON
    From: Olof Johansson <olof@lixom.net>

    Not using the ppc-specific WARN_ON/BUG_ON constructs actually saves about
    4K text on a ppc64_defconfig. The main reason seems to be that prepping
    the arguments to the conditional trap instructions is more work than just
    doing a compare and branch.

    Signed-off-by: Olof Johansson <olof@lixom.net>
    Cc: <linux-arch@vger.kernel.org>
    Cc: Scott Wood <scottwood@freescale.com>
    Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Cc: Paul Mackerras <paulus@samba.org>,
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    ---

    include/asm-powerpc/bug.h | 37 -------------------------------------
    1 file changed, 37 deletions(-)

    Index: linux-2.6.24-rc6/include/asm-powerpc/bug.h
    ===================================================================
    --- linux-2.6.24-rc6.orig/include/asm-powerpc/bug.h
    +++ linux-2.6.24-rc6/include/asm-powerpc/bug.h
    @@ -54,12 +54,6 @@
    ".previous\n"
    #endif

    -/*
    - * BUG_ON() and WARN_ON() do their best to cooperate with compile-time
    - * optimisations. However depending on the complexity of the condition
    - * some compiler versions may not produce optimal results.
    - */
    -
    #define BUG() do { \
    __asm__ __volatile__( \
    "1: twi 31,0,0\n" \
    @@ -69,20 +63,6 @@
    for(;;) ; \
    } while (0)

    -#define BUG_ON(x) do { \
    - if (__builtin_constant_p(x)) { \
    - if (x) \
    - BUG(); \
    - } else { \
    - __asm__ __volatile__( \
    - "1: "PPC_TLNEI" %4,0\n" \
    - _EMIT_BUG_ENTRY \
    - : : "i" (__FILE__), "i" (__LINE__), "i" (0), \
    - "i" (sizeof(struct bug_entry)), \
    - "r" ((__force long)(x))); \
    - } \
    -} while (0)
    -
    #define __WARN() do { \
    __asm__ __volatile__( \
    "1: twi 31,0,0\n" \
    @@ -92,23 +72,6 @@
    "i" (sizeof(struct bug_entry))); \
    } while (0)

    -#define WARN_ON(x) ({ \
    - int __ret_warn_on = !!(x); \
    - if (__builtin_constant_p(__ret_warn_on)) { \
    - if (__ret_warn_on) \
    - __WARN(); \
    - } else { \
    - __asm__ __volatile__( \
    - "1: "PPC_TLNEI" %4,0\n" \
    - _EMIT_BUG_ENTRY \
    - : : "i" (__FILE__), "i" (__LINE__), \
    - "i" (BUGFLAG_WARNING), \
    - "i" (sizeof(struct bug_entry)), \
    - "r" (__ret_warn_on)); \
    - } \
    - unlikely(__ret_warn_on); \
    -})
    -
    #endif /* __ASSEMBLY __ */
    #endif /* CONFIG_BUG */


    --
    If you want to reach me at my work email, use arjan@linux.intel.com
    For development, discussion and tips for power savings,
    visit http://www.lesswatts.org


    \
     
     \ /
      Last update: 2008-01-06 04:17    [W:0.023 / U:90.704 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site