1: /* 2: * Copyright (c) 1987 Regents of the University of California. 3: * All rights reserved. The Berkeley software License Agreement 4: * specifies the terms and conditions for redistribution. 5: */ 6: 7: #ifdef LIBC_SCCS 8: <@(#)remque.s 1.2 (Berkeley) 1/20/87\0> 9: .even 10: #endif LIBC_SCCS 11: 12: /* 13: * struct qelem 14: * { 15: * struct qelem *q_forw; 16: * struct qelem *q_back; 17: * char q_data[]; 18: * } 19: * 20: * remque (elem) 21: * struct qelem *elem 22: * 23: * Remove elem from queue. 24: */ 25: #include "DEFS.h" 26: 27: ENTRY(remque) 28: mov 2(sp),r0 / r0 = elem 29: mov (r0),r1 / r1 = elem->q_forw 30: 31: mov 2(r0),r0 / r0 = elem->q_back 32: mov r1,(r0) / elem->q_back->q_forw = elem->forw 33: mov r0,2(r1) / elem->q_forw->q_back = elem->back 34: 35: rts pc