linux/arch/openrisc/include/asm/bitops/__ffs.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-or-later */
   2/*
   3 * OpenRISC Linux
   4 *
   5 * Copyright (C) 2010-2011 Jonas Bonn <jonas@southpole.se>
   6 */
   7
   8#ifndef __ASM_OPENRISC___FFS_H
   9#define __ASM_OPENRISC___FFS_H
  10
  11
  12#ifdef CONFIG_OPENRISC_HAVE_INST_FF1
  13
  14static inline unsigned long __ffs(unsigned long x)
  15{
  16        int ret;
  17
  18        __asm__ ("l.ff1 %0,%1"
  19                 : "=r" (ret)
  20                 : "r" (x));
  21
  22        return ret-1;
  23}
  24
  25#else
  26#include <asm-generic/bitops/__ffs.h>
  27#endif
  28
  29#endif /* __ASM_OPENRISC___FFS_H */
  30