[PATCH] powerpc: sysdev: cpm1: Optimise gpio bit calculation
Michael Ellerman
mpe at ellerman.id.au
Fri Mar 10 19:41:33 AEDT 2017
Christophe Leroy <christophe.leroy at c-s.fr> writes:
> Help a bit the compiler to provide better code:
>
> unsigned int f(int i)
> {
> return 1 << (31 - i);
> }
>
> unsigned int g(int i)
> {
> return 0x80000000 >> i;
> }
>
> Disassembly of section .text:
>
> 00000000 <f>:
> 0: 20 63 00 1f subfic r3,r3,31
> 4: 39 20 00 01 li r9,1
> 8: 7d 23 18 30 slw r3,r9,r3
> c: 4e 80 00 20 blr
>
> 00000010 <g>:
> 10: 3d 20 80 00 lis r9,-32768
> 14: 7d 23 1c 30 srw r3,r9,r3
> 18: 4e 80 00 20 blr
Well yeah, it saves one instruction, but is it worth it? Are these gpio
routines in some hot path I don't know about?
cheers
More information about the Linuxppc-dev
mailing list