On Mon, Feb 7, 2011 at 01:57, Greg Ungerer <[email protected]> wrote:
> m68k: remove arch specific non-optimized memcmp()
>
> The m68k arch implements its own memcmp() function. It is not optimized
> in any way (it is the most strait forward coding of memcmp you can get).
> Remove it and use the kernels standard memcmp() implementation.
>
> This also goes part of the way to fixing a regression caused by commit
> ea61bc461d09e8d331a307916530aaae808c72a2 ("m68k/m68knommu: merge MMU and
> non-MMU string.h"), which breaks non-coldfire non-mmu builds (which is
> the 68x328 and 68360 families). They currently have no memcmp() function
> defined, since there is none in the m68knommu/lib functions.
>
> Signed-off-by: Greg Ungerer <[email protected]>

Go ahead!

Acked-by: Geert Uytterhoeven <[email protected]>

> ---
>  arch/m68k/include/asm/string.h |    4 +---
>  arch/m68k/lib/string.c         |   11 -----------
>  2 files changed, 1 insertions(+), 14 deletions(-)
>
> diff --git a/arch/m68k/include/asm/string.h b/arch/m68k/include/asm/string.h
> index 65b1312..ffc3c3f 100644
> --- a/arch/m68k/include/asm/string.h
> +++ b/arch/m68k/include/asm/string.h
> @@ -102,11 +102,9 @@ static inline int strcmp(const char *cs, const char *ct)
>
>  #define __HAVE_ARCH_MEMMOVE
>  extern void *memmove(void *, const void *, __kernel_size_t);
> +#endif /* CONFIG_COLDFIRE */
>
> -#define __HAVE_ARCH_MEMCMP
> -extern int memcmp(const void *, const void *, __kernel_size_t);
>  #define memcmp(d, s, n) __builtin_memcmp(d, s, n)
> -#endif /* CONFIG_COLDFIRE */
>
>  #define __HAVE_ARCH_MEMSET
>  extern void *memset(void *, int, __kernel_size_t);
> diff --git a/arch/m68k/lib/string.c b/arch/m68k/lib/string.c
> index 4253f87..d399c5f 100644
> --- a/arch/m68k/lib/string.c
> +++ b/arch/m68k/lib/string.c
> @@ -243,14 +243,3 @@ void *memmove(void *dest, const void *src, size_t n)
>        return xdest;
>  }
>  EXPORT_SYMBOL(memmove);
> -
> -int memcmp(const void *cs, const void *ct, size_t count)
> -{
> -       const unsigned char *su1, *su2;
> -
> -       for (su1 = cs, su2 = ct; count > 0; ++su1, ++su2, count--)
> -               if (*su1 != *su2)
> -                       return *su1 < *su2 ? -1 : +1;
> -       return 0;
> -}
> -EXPORT_SYMBOL(memcmp);

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to