On Fri, 01 Mar 2019, Andrew Morton <a...@linux-foundation.org> wrote: > On Fri, 1 Mar 2019 14:52:07 +0200 Jani Nikula <jani.nik...@intel.com> wrote: > >> While is_power_of_2() is an inline function and likely gets optimized >> for compile time constant arguments, it still doesn't produce an integer >> constant expression that could be used in, say, static data >> initialization or case labels. > > hm, what code wants to do these things? > >> Make is_power_of_2() an integer constant expression when possible, >> otherwise using the inline function to avoid multiple evaluation of the >> parameter. > > Spose so. But I fear that some gcc versions will get it right and > others will mess it up. While this patch is under test I think it > would be best to also have at least one or two callsites which actually > use the compile-time evaluation feature. Possible?
I have some drm/i915 patches that have a local compile-time version of IS_POWER_OF_2(). It'll take a while before they hit Linus' master. This can wait. BR, Jani. -- Jani Nikula, Intel Open Source Graphics Center