diff options
author | Christophe Leroy <christophe.leroy@c-s.fr> | 2016-02-09 17:08:31 +0100 |
---|---|---|
committer | Scott Wood <oss@buserror.net> | 2016-03-12 00:20:12 +0100 |
commit | 716fa91d19fb122a1392b362e85929e8385b1fd2 (patch) | |
tree | f01d18bd63dbe57393fea1983bbfaad04404e260 /arch/powerpc/kernel/misc_32.S | |
parent | powerpc: Simplify test in __dma_sync() (diff) | |
download | linux-716fa91d19fb122a1392b362e85929e8385b1fd2.tar.xz linux-716fa91d19fb122a1392b362e85929e8385b1fd2.zip |
powerpc32: small optimisation in flush_icache_range()
Inlining of _dcache_range() functions has shown that the compiler
does the same thing a bit better with one insn less
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: Scott Wood <oss@buserror.net>
Diffstat (limited to 'arch/powerpc/kernel/misc_32.S')
-rw-r--r-- | arch/powerpc/kernel/misc_32.S | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/powerpc/kernel/misc_32.S b/arch/powerpc/kernel/misc_32.S index 09e1e5df0f34..3ec5a2204f26 100644 --- a/arch/powerpc/kernel/misc_32.S +++ b/arch/powerpc/kernel/misc_32.S @@ -348,10 +348,9 @@ BEGIN_FTR_SECTION PURGE_PREFETCHED_INS blr /* for 601, do nothing */ END_FTR_SECTION_IFSET(CPU_FTR_COHERENT_ICACHE) - li r5,L1_CACHE_BYTES-1 - andc r3,r3,r5 + rlwinm r3,r3,0,0,31 - L1_CACHE_SHIFT subf r4,r3,r4 - add r4,r4,r5 + addi r4,r4,L1_CACHE_BYTES - 1 srwi. r4,r4,L1_CACHE_SHIFT beqlr mtctr r4 |