+#if defined(CONFIG_PREEMPT)
+ bra done:8 /* userspace thoru */
+3:
+ btst #4,r0l
+ beq done:8 /* userspace thoru */
+4:
+ mov.l @(TI_PRE_COUNT:16,er4),er1
+ bne done:8
+ mov.l @(TI_FLAGS:16,er4),er1
+ btst #TIF_NEED_RESCHED,r1l
+ beq done:8
+ mov.b r0l,r0l
+ bpl done:8 /* interrupt off (exception path?) */
+ mov.l #PREEMPT_ACTIVE,er1
+ mov.l er1,@(TI_PRE_COUNT:16,er4)
+ andc #0x7f,ccr
+ jsr @SYMBOL_NAME(schedule)
+ sub.l er1,er1
+ mov.l er1,@(TI_PRE_COUNT:16,er4)
+ orc #0x80,ccr
+ bra 4b:8
+#endif
+done: