unicore32: fix build error for find bitops
Remove the __uc32_ prefix in find bitops functions. Move find_* macros behind asm-generic/bitops.h inclusion. see commit <19de85ef574c3a2182e3ccad9581805052f14946> bitops: add #ifndef for each of find bitops also see commit <63e424c84429903c92a0f1e9654c31ccaf6694d0> arch: remove CONFIG_GENERIC_FIND_{NEXT_BIT,BIT_LE,LAST_BIT} Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn> Cc: Akinobu Mita <akinobu.mita@gmail.com> Acked-by: Akinobu Mita <akinobu.mita@gmail.com> Cc: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
parent
7f80850d3f
commit
e13b91c1c4
|
@ -13,12 +13,6 @@
|
||||||
#ifndef __UNICORE_BITOPS_H__
|
#ifndef __UNICORE_BITOPS_H__
|
||||||
#define __UNICORE_BITOPS_H__
|
#define __UNICORE_BITOPS_H__
|
||||||
|
|
||||||
#define find_next_bit __uc32_find_next_bit
|
|
||||||
#define find_next_zero_bit __uc32_find_next_zero_bit
|
|
||||||
|
|
||||||
#define find_first_bit __uc32_find_first_bit
|
|
||||||
#define find_first_zero_bit __uc32_find_first_zero_bit
|
|
||||||
|
|
||||||
#define _ASM_GENERIC_BITOPS_FLS_H_
|
#define _ASM_GENERIC_BITOPS_FLS_H_
|
||||||
#define _ASM_GENERIC_BITOPS___FLS_H_
|
#define _ASM_GENERIC_BITOPS___FLS_H_
|
||||||
#define _ASM_GENERIC_BITOPS_FFS_H_
|
#define _ASM_GENERIC_BITOPS_FFS_H_
|
||||||
|
@ -44,4 +38,10 @@ static inline int fls(int x)
|
||||||
|
|
||||||
#include <asm-generic/bitops.h>
|
#include <asm-generic/bitops.h>
|
||||||
|
|
||||||
|
/* following definitions: to avoid using codes in lib/find_*.c */
|
||||||
|
#define find_next_bit find_next_bit
|
||||||
|
#define find_next_zero_bit find_next_zero_bit
|
||||||
|
#define find_first_bit find_first_bit
|
||||||
|
#define find_first_zero_bit find_first_zero_bit
|
||||||
|
|
||||||
#endif /* __UNICORE_BITOPS_H__ */
|
#endif /* __UNICORE_BITOPS_H__ */
|
||||||
|
|
|
@ -24,8 +24,8 @@
|
||||||
|
|
||||||
#include "ksyms.h"
|
#include "ksyms.h"
|
||||||
|
|
||||||
EXPORT_SYMBOL(__uc32_find_next_zero_bit);
|
EXPORT_SYMBOL(find_next_zero_bit);
|
||||||
EXPORT_SYMBOL(__uc32_find_next_bit);
|
EXPORT_SYMBOL(find_next_bit);
|
||||||
|
|
||||||
EXPORT_SYMBOL(__backtrace);
|
EXPORT_SYMBOL(__backtrace);
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
* Purpose : Find a 'zero' bit
|
* Purpose : Find a 'zero' bit
|
||||||
* Prototype: int find_first_zero_bit(void *addr, unsigned int maxbit);
|
* Prototype: int find_first_zero_bit(void *addr, unsigned int maxbit);
|
||||||
*/
|
*/
|
||||||
__uc32_find_first_zero_bit:
|
ENTRY(find_first_zero_bit)
|
||||||
cxor.a r1, #0
|
cxor.a r1, #0
|
||||||
beq 3f
|
beq 3f
|
||||||
mov r2, #0
|
mov r2, #0
|
||||||
|
@ -29,13 +29,14 @@ __uc32_find_first_zero_bit:
|
||||||
bub 1b
|
bub 1b
|
||||||
3: mov r0, r1 @ no free bits
|
3: mov r0, r1 @ no free bits
|
||||||
mov pc, lr
|
mov pc, lr
|
||||||
|
ENDPROC(find_first_zero_bit)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Purpose : Find next 'zero' bit
|
* Purpose : Find next 'zero' bit
|
||||||
* Prototype: int find_next_zero_bit
|
* Prototype: int find_next_zero_bit
|
||||||
* (void *addr, unsigned int maxbit, int offset)
|
* (void *addr, unsigned int maxbit, int offset)
|
||||||
*/
|
*/
|
||||||
ENTRY(__uc32_find_next_zero_bit)
|
ENTRY(find_next_zero_bit)
|
||||||
cxor.a r1, #0
|
cxor.a r1, #0
|
||||||
beq 3b
|
beq 3b
|
||||||
and.a ip, r2, #7
|
and.a ip, r2, #7
|
||||||
|
@ -47,14 +48,14 @@ ENTRY(__uc32_find_next_zero_bit)
|
||||||
or r2, r2, #7 @ if zero, then no bits here
|
or r2, r2, #7 @ if zero, then no bits here
|
||||||
add r2, r2, #1 @ align bit pointer
|
add r2, r2, #1 @ align bit pointer
|
||||||
b 2b @ loop for next bit
|
b 2b @ loop for next bit
|
||||||
ENDPROC(__uc32_find_next_zero_bit)
|
ENDPROC(find_next_zero_bit)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Purpose : Find a 'one' bit
|
* Purpose : Find a 'one' bit
|
||||||
* Prototype: int find_first_bit
|
* Prototype: int find_first_bit
|
||||||
* (const unsigned long *addr, unsigned int maxbit);
|
* (const unsigned long *addr, unsigned int maxbit);
|
||||||
*/
|
*/
|
||||||
__uc32_find_first_bit:
|
ENTRY(find_first_bit)
|
||||||
cxor.a r1, #0
|
cxor.a r1, #0
|
||||||
beq 3f
|
beq 3f
|
||||||
mov r2, #0
|
mov r2, #0
|
||||||
|
@ -66,13 +67,14 @@ __uc32_find_first_bit:
|
||||||
bub 1b
|
bub 1b
|
||||||
3: mov r0, r1 @ no free bits
|
3: mov r0, r1 @ no free bits
|
||||||
mov pc, lr
|
mov pc, lr
|
||||||
|
ENDPROC(find_first_bit)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Purpose : Find next 'one' bit
|
* Purpose : Find next 'one' bit
|
||||||
* Prototype: int find_next_zero_bit
|
* Prototype: int find_next_zero_bit
|
||||||
* (void *addr, unsigned int maxbit, int offset)
|
* (void *addr, unsigned int maxbit, int offset)
|
||||||
*/
|
*/
|
||||||
ENTRY(__uc32_find_next_bit)
|
ENTRY(find_next_bit)
|
||||||
cxor.a r1, #0
|
cxor.a r1, #0
|
||||||
beq 3b
|
beq 3b
|
||||||
and.a ip, r2, #7
|
and.a ip, r2, #7
|
||||||
|
@ -83,7 +85,7 @@ ENTRY(__uc32_find_next_bit)
|
||||||
or r2, r2, #7 @ if zero, then no bits here
|
or r2, r2, #7 @ if zero, then no bits here
|
||||||
add r2, r2, #1 @ align bit pointer
|
add r2, r2, #1 @ align bit pointer
|
||||||
b 2b @ loop for next bit
|
b 2b @ loop for next bit
|
||||||
ENDPROC(__uc32_find_next_bit)
|
ENDPROC(find_next_bit)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* One or more bits in the LSB of r3 are assumed to be set.
|
* One or more bits in the LSB of r3 are assumed to be set.
|
||||||
|
|
Loading…
Reference in New Issue