Message ID | 1507747806-10251-1-git-send-email-vijay.ac.kumar@oracle.com |
---|---|
Headers | show |
Series | sparc64: Optimize fls and __fls | expand |
Looked at all the patches. Looks good to me. Reviewed-by: Babu Moger <babu.moger@oracle.com> On 10/11/2017 1:50 PM, Vijay Kumar wrote: > SPARC provides lzcnt instruction (with VIS3) which can be used to > optimize fls, __fls and fls64 functions. For the systems that supports > lzcnt instruction, we now do boot time patching to use sparc > optimized fls, __fls and fls64 functions. > > v3->v4: > - Fixed a typo. > v2->v3: > - Using ENTRY(), ENDPROC() for assembler functions. > - Removed BITS_PER_LONG from __fls. > - Using generic fls64(). > - Replaced lzcnt instruction with .word directive. > v1->v2: > - Fixed delay slot issue. > > Vijay Kumar (5): > sparc64: Define SPARC default fls function > sparc64: Define SPARC default __fls function > sparc64: SPARC optimized fls function > sparc64: SPARC optimized __fls function > sparc64: Use sparc optimized fls and __fls for T4 and above > > arch/sparc/include/asm/bitops_64.h | 5 ++- > arch/sparc/kernel/head_64.S | 2 + > arch/sparc/lib/Makefile | 3 ++ > arch/sparc/lib/NG4fls.S | 30 ++++++++++++++++ > arch/sparc/lib/NG4patch.S | 9 +++++ > arch/sparc/lib/fls.S | 67 ++++++++++++++++++++++++++++++++++++ > arch/sparc/lib/fls64.S | 61 ++++++++++++++++++++++++++++++++ > 7 files changed, 175 insertions(+), 2 deletions(-) > create mode 100644 arch/sparc/lib/NG4fls.S > create mode 100644 arch/sparc/lib/fls.S > create mode 100644 arch/sparc/lib/fls64.S > -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Vijay Kumar <vijay.ac.kumar@oracle.com> Date: Wed, 11 Oct 2017 12:50:01 -0600 > SPARC provides lzcnt instruction (with VIS3) which can be used to > optimize fls, __fls and fls64 functions. For the systems that supports > lzcnt instruction, we now do boot time patching to use sparc > optimized fls, __fls and fls64 functions. > > v3->v4: > - Fixed a typo. > v2->v3: > - Using ENTRY(), ENDPROC() for assembler functions. > - Removed BITS_PER_LONG from __fls. > - Using generic fls64(). > - Replaced lzcnt instruction with .word directive. > v1->v2: > - Fixed delay slot issue. Series applied, thank you. -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html