rendered paste body00000144 <lock_acquire>:
144: 55 push %ebp
145: 89 e5 mov %esp,%ebp
147: 83 ec 08 sub $0x8,%esp
14a: 8b 45 08 mov 0x8(%ebp),%eax
14d: 83 c0 08 add $0x8,%eax
150: 89 04 24 mov %eax,(%esp)
153: e8 fc ff ff ff call 154 <lock_acquire+0x10>
154: R_386_PC32 spinlock_acquire
158: 8b 45 08 mov 0x8(%ebp),%eax
15b: 83 78 04 00 cmpl $0x0,0x4(%eax) #lock == UNLOCKED?
15f: 75 1a jne 17b <lock_acquire+0x37> #no? -> block!
###l->status == UNLOCKED
161: 8b 45 08 mov 0x8(%ebp),%eax
164: c7 40 04 01 00 00 00 movl $0x1,0x4(%eax) #l->status = LOCKED;
16b: 8b 45 08 mov 0x8(%ebp),%eax
16e: 83 c0 08 add $0x8,%eax #push &l->spinlock
171: 89 04 24 mov %eax,(%esp)
174: e8 fc ff ff ff call 175 <lock_acquire+0x31> #spinlock_release(&l->spinlock);
175: R_386_PC32 spinlock_release
179: eb 15 jmp 190 <lock_acquire+0x4c> #return
###l->status == LOCKED
17b: 8b 45 08 mov 0x8(%ebp),%eax
17e: 83 c0 08 add $0x8,%eax
181: 89 44 24 04 mov %eax,0x4(%esp) #push &l->spinlock
185: 8b 45 08 mov 0x8(%ebp),%eax
188: 89 04 24 mov %eax,(%esp) #push &l->waiting
18b: e8 fc ff ff ff call 18c <lock_acquire+0x48> #block(&l->waiting, &l->spinlock);
18c: R_386_PC32 block
190: c9 leave
191: c3 ret