From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752440AbdJFQzP (ORCPT ); Fri, 6 Oct 2017 12:55:15 -0400 Received: from userp1040.oracle.com ([156.151.31.81]:42228 "EHLO userp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751491AbdJFQzL (ORCPT ); Fri, 6 Oct 2017 12:55:11 -0400 From: Vijay Kumar To: davem@davemloft.net Cc: linux-kernel@vger.kernel.org, sparclinux@vger.kernel.org, babu.moger@oracle.com, rob.gardner@oracle.com, sam@ravnborg.org Subject: [PATCH v3 4/5] sparc64: SPARC optimised __fls function Date: Fri, 6 Oct 2017 10:54:52 -0600 Message-Id: <1507308893-9218-5-git-send-email-vijay.ac.kumar@oracle.com> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1507308893-9218-1-git-send-email-vijay.ac.kumar@oracle.com> References: <1507308893-9218-1-git-send-email-vijay.ac.kumar@oracle.com> X-Source-IP: aserv0021.oracle.com [141.146.126.233] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Defined SPARC optimised __fls using lzcnt opcode. Signed-off-by: Vijay Kumar --- arch/sparc/lib/NG4fls.S | 10 ++++++++++ 1 files changed, 10 insertions(+), 0 deletions(-) diff --git a/arch/sparc/lib/NG4fls.S b/arch/sparc/lib/NG4fls.S index 5ed7da9..34ad371 100644 --- a/arch/sparc/lib/NG4fls.S +++ b/arch/sparc/lib/NG4fls.S @@ -18,3 +18,13 @@ ENTRY(NG4fls) retl sub %g3, %g2, %o0 ENDPROC(NG4fls) + +ENTRY(__NG4fls) + brz,pn %o0, 1f + LXCNT_O0_G2 !lzcnt %o0, %g2 + mov 63, %g3 + sub %g3, %g2, %o0 +1: + retl + nop +ENDPROC(__NG4fls) -- 1.7.1