Re: [PATCH 2/6] lib/lzo: enable 64-bit CTZ on Arm

From: Markus F.X.J. Oberhumer
Date: Wed Nov 21 2018 - 22:06:23 EST


On 2018-11-21 18:31, Christoph Hellwig wrote:
>> #define LZO_USE_CTZ32 1
>> #elif defined(__i386__) || defined(__powerpc__)
>> #define LZO_USE_CTZ32 1
>> -#elif defined(__arm__) && (__LINUX_ARM_ARCH__ >= 5)
>> +#elif defined(__arm__)
>> +#if (__LINUX_ARM_ARCH__ >= 5)
>> #define LZO_USE_CTZ32 1
>> #endif
>> +#if (__LINUX_ARM_ARCH__ >= 6) && (CONFIG_THUMB2_KERNEL)
>> +#define LZO_USE_CTZ64 1
>
> All of this really needs to be driven by Kconfig symbols that
> the architecture selects instead of magic arch ifdefs here.

LZO_USE_CTZ32 and LZO_USE_CTZ64 should only be defined if there
is a *fast* hardware instruction.

It would be nice if there exists a kernel #define we could
use for detecting that.

--
Markus Oberhumer, <markus@xxxxxxxxxxxxx>, http://www.oberhumer.com/