Re: [PATCH] x86: bitops: fix build regression

From: Nick Desaulniers
Date: Thu May 07 2020 - 15:22:46 EST


On Wed, May 6, 2020 at 11:18 PM Brian Gerst <brgerst@xxxxxxxxx> wrote:
>
> I think a better fix would be to make CONST_MASK() return a u8 value
> rather than have to cast on every use.
>
> Also I question the need for the "q" constraint. It was added in
> commit 437a0a54 as a workaround for GCC 3.4.4. Now that the minimum
> GCC version is 4.6, is this still necessary?

TL;DR yes

ah, thanks for the git archeology, it's useful. I don't think this is
a compiler bug however, just the compiler being more strict that the
`b` suffix on `orb` requires a 8b register operand. For 32b x86, `q`
asm constraint is required, because not all GPR's had lower 8b
register aliases, as Arnd found and HPA noted as well.

I like your suggested change to CONST_MASK, and will send that in a bit.
--
Thanks,
~Nick Desaulniers