sparc64: Use sparc optimized fls and __fls for T4 and above
For T4 and above, patch fls and __fls functions at the boot time to use lzcnt instruction. Signed-off-by: Vijay Kumar <vijay.ac.kumar@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
2b41ce5df2
commit
46ad8d2d22
|
@ -640,6 +640,8 @@ niagara4_patch:
|
|||
nop
|
||||
call niagara4_patch_pageops
|
||||
nop
|
||||
call niagara4_patch_fls
|
||||
nop
|
||||
|
||||
ba,a,pt %xcc, 80f
|
||||
nop
|
||||
|
|
|
@ -3,6 +3,8 @@
|
|||
* Copyright (C) 2012 David S. Miller <davem@davemloft.net>
|
||||
*/
|
||||
|
||||
#include <linux/linkage.h>
|
||||
|
||||
#define BRANCH_ALWAYS 0x10680000
|
||||
#define NOP 0x01000000
|
||||
#define NG_DO_PATCH(OLD, NEW) \
|
||||
|
@ -52,3 +54,10 @@ niagara4_patch_pageops:
|
|||
retl
|
||||
nop
|
||||
.size niagara4_patch_pageops,.-niagara4_patch_pageops
|
||||
|
||||
ENTRY(niagara4_patch_fls)
|
||||
NG_DO_PATCH(fls, NG4fls)
|
||||
NG_DO_PATCH(__fls, __NG4fls)
|
||||
retl
|
||||
nop
|
||||
ENDPROC(niagara4_patch_fls)
|
||||
|
|
Loading…
Reference in New Issue