diff options
Diffstat (limited to 'arch/arm/lib/findbit.S')
-rw-r--r-- | arch/arm/lib/findbit.S | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/arch/arm/lib/findbit.S b/arch/arm/lib/findbit.S index f055d56ea68a..6f8e27a58c78 100644 --- a/arch/arm/lib/findbit.S +++ b/arch/arm/lib/findbit.S | |||
@@ -27,7 +27,7 @@ ENTRY(_find_first_zero_bit_le) | |||
27 | mov r2, #0 | 27 | mov r2, #0 |
28 | 1: ldrb r3, [r0, r2, lsr #3] | 28 | 1: ldrb r3, [r0, r2, lsr #3] |
29 | eors r3, r3, #0xff @ invert bits | 29 | eors r3, r3, #0xff @ invert bits |
30 | bne .found @ any now set - found zero bit | 30 | bne .L_found @ any now set - found zero bit |
31 | add r2, r2, #8 @ next bit pointer | 31 | add r2, r2, #8 @ next bit pointer |
32 | 2: cmp r2, r1 @ any more? | 32 | 2: cmp r2, r1 @ any more? |
33 | blo 1b | 33 | blo 1b |
@@ -46,7 +46,7 @@ ENTRY(_find_next_zero_bit_le) | |||
46 | ldrb r3, [r0, r2, lsr #3] | 46 | ldrb r3, [r0, r2, lsr #3] |
47 | eor r3, r3, #0xff @ now looking for a 1 bit | 47 | eor r3, r3, #0xff @ now looking for a 1 bit |
48 | movs r3, r3, lsr ip @ shift off unused bits | 48 | movs r3, r3, lsr ip @ shift off unused bits |
49 | bne .found | 49 | bne .L_found |
50 | orr r2, r2, #7 @ if zero, then no bits here | 50 | orr r2, r2, #7 @ if zero, then no bits here |
51 | add r2, r2, #1 @ align bit pointer | 51 | add r2, r2, #1 @ align bit pointer |
52 | b 2b @ loop for next bit | 52 | b 2b @ loop for next bit |
@@ -61,7 +61,7 @@ ENTRY(_find_first_bit_le) | |||
61 | mov r2, #0 | 61 | mov r2, #0 |
62 | 1: ldrb r3, [r0, r2, lsr #3] | 62 | 1: ldrb r3, [r0, r2, lsr #3] |
63 | movs r3, r3 | 63 | movs r3, r3 |
64 | bne .found @ any now set - found zero bit | 64 | bne .L_found @ any now set - found zero bit |
65 | add r2, r2, #8 @ next bit pointer | 65 | add r2, r2, #8 @ next bit pointer |
66 | 2: cmp r2, r1 @ any more? | 66 | 2: cmp r2, r1 @ any more? |
67 | blo 1b | 67 | blo 1b |
@@ -79,7 +79,7 @@ ENTRY(_find_next_bit_le) | |||
79 | beq 1b @ If new byte, goto old routine | 79 | beq 1b @ If new byte, goto old routine |
80 | ldrb r3, [r0, r2, lsr #3] | 80 | ldrb r3, [r0, r2, lsr #3] |
81 | movs r3, r3, lsr ip @ shift off unused bits | 81 | movs r3, r3, lsr ip @ shift off unused bits |
82 | bne .found | 82 | bne .L_found |
83 | orr r2, r2, #7 @ if zero, then no bits here | 83 | orr r2, r2, #7 @ if zero, then no bits here |
84 | add r2, r2, #1 @ align bit pointer | 84 | add r2, r2, #1 @ align bit pointer |
85 | b 2b @ loop for next bit | 85 | b 2b @ loop for next bit |
@@ -93,7 +93,7 @@ ENTRY(_find_first_zero_bit_be) | |||
93 | 1: eor r3, r2, #0x18 @ big endian byte ordering | 93 | 1: eor r3, r2, #0x18 @ big endian byte ordering |
94 | ldrb r3, [r0, r3, lsr #3] | 94 | ldrb r3, [r0, r3, lsr #3] |
95 | eors r3, r3, #0xff @ invert bits | 95 | eors r3, r3, #0xff @ invert bits |
96 | bne .found @ any now set - found zero bit | 96 | bne .L_found @ any now set - found zero bit |
97 | add r2, r2, #8 @ next bit pointer | 97 | add r2, r2, #8 @ next bit pointer |
98 | 2: cmp r2, r1 @ any more? | 98 | 2: cmp r2, r1 @ any more? |
99 | blo 1b | 99 | blo 1b |
@@ -109,7 +109,7 @@ ENTRY(_find_next_zero_bit_be) | |||
109 | ldrb r3, [r0, r3, lsr #3] | 109 | ldrb r3, [r0, r3, lsr #3] |
110 | eor r3, r3, #0xff @ now looking for a 1 bit | 110 | eor r3, r3, #0xff @ now looking for a 1 bit |
111 | movs r3, r3, lsr ip @ shift off unused bits | 111 | movs r3, r3, lsr ip @ shift off unused bits |
112 | bne .found | 112 | bne .L_found |
113 | orr r2, r2, #7 @ if zero, then no bits here | 113 | orr r2, r2, #7 @ if zero, then no bits here |
114 | add r2, r2, #1 @ align bit pointer | 114 | add r2, r2, #1 @ align bit pointer |
115 | b 2b @ loop for next bit | 115 | b 2b @ loop for next bit |
@@ -121,7 +121,7 @@ ENTRY(_find_first_bit_be) | |||
121 | 1: eor r3, r2, #0x18 @ big endian byte ordering | 121 | 1: eor r3, r2, #0x18 @ big endian byte ordering |
122 | ldrb r3, [r0, r3, lsr #3] | 122 | ldrb r3, [r0, r3, lsr #3] |
123 | movs r3, r3 | 123 | movs r3, r3 |
124 | bne .found @ any now set - found zero bit | 124 | bne .L_found @ any now set - found zero bit |
125 | add r2, r2, #8 @ next bit pointer | 125 | add r2, r2, #8 @ next bit pointer |
126 | 2: cmp r2, r1 @ any more? | 126 | 2: cmp r2, r1 @ any more? |
127 | blo 1b | 127 | blo 1b |
@@ -136,7 +136,7 @@ ENTRY(_find_next_bit_be) | |||
136 | eor r3, r2, #0x18 @ big endian byte ordering | 136 | eor r3, r2, #0x18 @ big endian byte ordering |
137 | ldrb r3, [r0, r3, lsr #3] | 137 | ldrb r3, [r0, r3, lsr #3] |
138 | movs r3, r3, lsr ip @ shift off unused bits | 138 | movs r3, r3, lsr ip @ shift off unused bits |
139 | bne .found | 139 | bne .L_found |
140 | orr r2, r2, #7 @ if zero, then no bits here | 140 | orr r2, r2, #7 @ if zero, then no bits here |
141 | add r2, r2, #1 @ align bit pointer | 141 | add r2, r2, #1 @ align bit pointer |
142 | b 2b @ loop for next bit | 142 | b 2b @ loop for next bit |
@@ -146,7 +146,7 @@ ENTRY(_find_next_bit_be) | |||
146 | /* | 146 | /* |
147 | * One or more bits in the LSB of r3 are assumed to be set. | 147 | * One or more bits in the LSB of r3 are assumed to be set. |
148 | */ | 148 | */ |
149 | .found: | 149 | .L_found: |
150 | #if __LINUX_ARM_ARCH__ >= 5 | 150 | #if __LINUX_ARM_ARCH__ >= 5 |
151 | rsb r1, r3, #0 | 151 | rsb r1, r3, #0 |
152 | and r3, r3, r1 | 152 | and r3, r3, r1 |