1
0
Fork 0
forked from len0rd/rockbox

Really fix it

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20538 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Maurus Cuelenaere 2009-03-25 22:29:49 +00:00
parent 6432363476
commit 52cb340962

View file

@ -40,14 +40,15 @@
.type find_first_set_bit, %function .type find_first_set_bit, %function
find_first_set_bit: find_first_set_bit:
beqz a0, 0 # if(a0 == 0) goto 1 beqz a0, l # if(a0 == 0) goto l
li v0, 32 # v0 = 32
negu t0, a0 # t0 = -a0 negu t0, a0 # t0 = -a0
and t0, t0, a0 # t0 = a0 & t0 and t0, a0, t0 # t0 = a0 & t0
clz v0, t0 # Get lead 0's count (v0=32 if all 0's) clz v0, a0 # Get lead 0's count (v0=32 if all 0's)
li t0, 31 # t0 = 31 li t0, 31 # t0 = 31
jr ra # subu v0, t0, v0 # v0 = t0 - v0
sub v0, t0, v0 # v0 = t0 - v0
1:
jr ra # jr ra #
nop # nop #
l:
li v0, 32 # v0 = 32 (don't put this after jr ra!
jr ra # binutils bug?)
nop #