Re: [PATCH] x86/hweight: Get rid of the special calling convention

From: Peter Zijlstra
Date: Mon May 30 2016 - 08:08:57 EST


On Mon, May 30, 2016 at 12:56:27PM +0200, Borislav Petkov wrote:
> From: Borislav Petkov <bp@xxxxxxx>
>
> People complained about ARCH_HWEIGHT_CFLAGS and how it throws a wrench
> into kcov, lto, etc, experimentations.
>
> Add asm versions for __sw_hweight{32,64}() and do explicit saving and
> restoring of clobbered registers. This gets rid of the special calling
> convention. We get to call those functions on !X86_FEATURE_POPCNT CPUs.
>
> We still need to hardcode POPCNT and register operands as some old gas
> versions which we support, do not know about POPCNT.
>
> Btw, remove redundant REX prefix from 32-bit POPCNT because alternatives
> can do padding now.
>
> Suggested-by: "H. Peter Anvin" <hpa@xxxxxxxxx>
> Signed-off-by: Borislav Petkov <bp@xxxxxxx>
> Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>

Acked-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>