On Thu, 2017-07-20 at 12:10 +0200, Peter Zijlstra wrote: > On Mon, Feb 01, 2016 at 04:36:38PM -0800, Eric Dumazet wrote: > > On Tue, 2016-02-02 at 00:08 +0100, Rasmus Villemoes wrote: > > > > > Thanks. (Is there a good way to tell gcc that avg*avg is actually a > > > 32x32->64 multiplication?) > > > > If avg is 32bit, compiler does that for you. > > > > u32 avg = ... > > > > u64 result = (u64)avg * avg; > > It does not in fact do that :/ See commit: > > 9e3d6223d209 ("math64, timers: Fix 32bit mul_u64_u32_shr() and friends")
Interesting :/ Thanks for letting me know !