Re: [PATCH v3] kernel.h: Skip single-eval logic on literals in min()/max()

From: Linus Torvalds
Date: Fri Mar 09 2018 - 19:38:38 EST


On Fri, Mar 9, 2018 at 4:32 PM, Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:
>
> I wonder which gcc versions actually accept Kees's addition.

Note that we already do have this pattern, as seen by:

git grep -2 __builtin_choose_expr | grep -2 __builtin_constant_p

which show drivers/pinctrl/intel/pinctrl-intel.h, so the pattern
already exists current kernels and _works_ - it apparently just
doesn't work in slightly more complicated cases.

It's one reason why I wondered if simplifying the expression to have
just that single __builtin_constant_p() might not end up working..

Linus