rendered paste body.LC1:
.ascii "queue_wait\000"
.text
.align 2
.global queue_wait
.type queue_wait, %function
queue_wait:
@ args = 0, pretend = 0, frame = 0
@ frame_needed = 0, uses_anonymous_args = 0
stmfd sp!, {r4, r5, r6, r7, r8, lr}
mov r4, r0
mov r8, r1
ldr r0, .L74
ldr r3, .L74+4
mov lr, pc
bx r3
ldr r0, .L74+8
ldr r2, [r0, #0]
add r3, r2, #1
str r3, [r0, #0]
mrs r5, cpsr
bic r3, r5, #128
orr r3, r3, #128
msr cpsr_c, r3
ldr r1, .L74+12
ldr r3, [r1, #0]
add r3, r3, #1
str r3, [r1, #0]
add r2, r2, #3
str r2, [r0, #0]
ldr r0, [r4, #140]
cmp r0, #0
beq .L64
ldr r3, [r0, #64]
cmp r3, #0
addne r0, r0, #64
movne r1, #0
blne queue_release_sender
.L64:
ldr r2, [r4, #132]
ldr r3, [r4, #136]
cmp r2, r3
bne .L67
ldr r7, .L74+16
ldr r6, .L74+20
.L68:
str r5, [r7, #16]
mov r0, r4
mov lr, pc
bx r6
mrs r5, cpsr
bic r3, r5, #128
orr r3, r3, #128
msr cpsr_c, r3
ldr r2, [r4, #132]
ldr r3, [r4, #136]
cmp r2, r3
beq .L68
.L67:
ldr r3, [r4, #132]
and r1, r3, #15
add r3, r3, #1
str r3, [r4, #132]
add r3, r4, r1, asl #3
ldmib r3, {r2, r3} @ phole ldm
stmia r8, {r2, r3} @ phole stm
ldr r0, [r4, #140]
cmp r0, #0
beq .L69
ldr r3, [r0, r1, asl #2]
cmp r3, #0
blne queue_fetch_sender
.L69:
and r3, r5, #128
mrs r1, cpsr
bic r2, r1, #128
orr r2, r2, r3
msr cpsr_c, r2
ldmfd sp!, {r4, r5, r6, r7, r8, pc}