Re: [PATCH] crypto: aegis: fix badly optimized clang output

2019-07-26 Thread Herbert Xu
Arnd Bergmann wrote: > Clang sometimes makes very different inlining decisions from gcc. > In case of the aegis crypto algorithms, it decides to turn the innermost > primitives (and, xor, ...) into separate functions but inline most of > the rest. > > This results in a huge amount of variables sp

Re: [PATCH] crypto: aegis: fix badly optimized clang output

2019-07-18 Thread Arnd Bergmann
On Thu, Jul 18, 2019 at 11:17 PM 'Nick Desaulniers' via Clang Built Linux wrote: > On Thu, Jul 18, 2019 at 6:50 AM Arnd Bergmann wrote: > > diff --git a/crypto/aegis.h b/crypto/aegis.h > > index 41a3090cda8e..efed7251c49d 100644 > > --- a/crypto/aegis.h > > +++ b/crypto/aegis.h > > @@ -34,21 +34,

Re: [PATCH] crypto: aegis: fix badly optimized clang output

2019-07-18 Thread Nick Desaulniers
On Thu, Jul 18, 2019 at 6:50 AM Arnd Bergmann wrote: > > Clang sometimes makes very different inlining decisions from gcc. > In case of the aegis crypto algorithms, it decides to turn the innermost > primitives (and, xor, ...) into separate functions but inline most of > the rest. > > This results

Re: [PATCH] crypto: aegis: fix badly optimized clang output

2019-07-18 Thread Joe Perches
On Thu, 2019-07-18 at 15:50 +0200, Arnd Bergmann wrote: > Clang sometimes makes very different inlining decisions from gcc. > In case of the aegis crypto algorithms, it decides to turn the innermost > primitives (and, xor, ...) into separate functions but inline most of > the rest. > This results

[PATCH] crypto: aegis: fix badly optimized clang output

2019-07-18 Thread Arnd Bergmann
Clang sometimes makes very different inlining decisions from gcc. In case of the aegis crypto algorithms, it decides to turn the innermost primitives (and, xor, ...) into separate functions but inline most of the rest. This results in a huge amount of variables spilled on the stack, leading to rat