2 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
6 /*****************************************************************************
10 AROS_LH0(void, Permit,
13 struct ExecBase *, SysBase, 23, Exec)
16 This function activates the dispatcher again after a call to Permit().
23 This function preserves all registers.
30 Forbid(), Disable(), Enable()
36 ******************************************************************************/
42 .globl AROS_SLIB_ENTRY(Permit,Exec)
43 .type AROS_SLIB_ENTRY(Permit,Exec),@function
44 AROS_SLIB_ENTRY
(Permit
,Exec
):
45 /* decrement nesting count and return if there are Forbid()s left */
46 subq.
b #1,TDNestCnt(a6)
49 /* return if there are no delayed switches pending. */
50 tst.
b AttnResched+
1(a6
)
53 /* if IDNestCnt is not -1 taskswitches are still forbidden */
57 /* Unset delayed switch bit and do the delayed switch */
58 bclr #7,AttnResched+1(a6)