📄 ucos_ii.lst
字号:
385 .LFB27:
386 .LM18:
387 /* prologue: frame size=0 */
388 /* prologue end (size=0) */
389 0054 FC01 movw r30,r24
390 .LM19:
391 0056 90E0 ldi r25,lo8(0)
392 .L21:
393 .LM20:
394 0058 8081 ld r24,Z
395 005a 8823 tst r24
396 005c 19F0 breq .L20
397 .LM21:
398 005e 3196 adiw r30,1
399 .LM22:
400 0060 9F5F subi r25,lo8(-(1))
401 0062 FACF rjmp .L21
402 .L20:
403 .LM23:
404 0064 892F mov r24,r25
405 0066 9927 clr r25
406 /* epilogue: frame size=0 */
407 0068 0895 ret
408 /* epilogue end (size=1) */
409 /* function OS_StrLen size 11 (10) */
410 .LFE27:
412 .global OSEventNameSet
414 OSEventNameSet:
415 .LFB3:
416 .LM24:
417 /* prologue: frame size=0 */
418 006a EF92 push r14
419 006c FF92 push r15
420 006e 0F93 push r16
421 0070 1F93 push r17
422 0072 CF93 push r28
423 0074 DF93 push r29
424 /* prologue end (size=6) */
425 0076 7C01 movw r14,r24
426 0078 8B01 movw r16,r22
427 007a EA01 movw r28,r20
428 .LM25:
429 /* #APP */
430 007c F894 cli
431 .LM26:
432 /* #NOAPP */
433 007e FC01 movw r30,r24
434 0080 8081 ld r24,Z
435 0082 9927 clr r25
436 0084 0197 sbiw r24,1
437 0086 0497 sbiw r24,4
438 0088 18F0 brlo .L23
439 .LM27:
440 /* #APP */
441 008a 7894 sei
442 .LM28:
443 /* #NOAPP */
444 008c 81E0 ldi r24,lo8(1)
445 008e 07C0 rjmp .L30
446 .L23:
447 .LM29:
448 0090 CB01 movw r24,r22
449 0092 0E94 0000 call OS_StrLen
450 .LM30:
451 0096 8032 cpi r24,lo8(32)
452 0098 20F0 brlo .L29
453 .LM31:
454 /* #APP */
455 009a 7894 sei
456 .LM32:
457 /* #NOAPP */
458 009c 8CE0 ldi r24,lo8(12)
459 .L30:
460 009e 8883 st Y,r24
461 .LM33:
462 00a0 07C0 rjmp .L22
463 .L29:
464 .LM34:
465 00a2 B801 movw r22,r16
466 00a4 C701 movw r24,r14
467 00a6 0896 adiw r24,8
468 00a8 0E94 0000 call OS_StrCopy
469 .LM35:
470 /* #APP */
471 00ac 7894 sei
472 .LM36:
473 /* #NOAPP */
474 00ae 1882 st Y,__zero_reg__
475 .L22:
476 /* epilogue: frame size=0 */
477 00b0 DF91 pop r29
478 00b2 CF91 pop r28
479 00b4 1F91 pop r17
480 00b6 0F91 pop r16
481 00b8 FF90 pop r15
482 00ba EF90 pop r14
483 00bc 0895 ret
484 /* epilogue end (size=7) */
485 /* function OSEventNameSet size 47 (34) */
486 .LFE3:
488 .global OSIntEnter
490 OSIntEnter:
491 .LFB5:
492 .LM37:
493 /* prologue: frame size=0 */
494 /* prologue end (size=0) */
495 .LM38:
496 00be 8091 0000 lds r24,OSRunning
497 00c2 8130 cpi r24,lo8(1)
498 00c4 39F4 brne .L31
499 .LM39:
500 00c6 8091 0000 lds r24,OSIntNesting
501 00ca 8F3F cpi r24,lo8(-1)
502 00cc 19F0 breq .L31
503 .LM40:
504 00ce 8F5F subi r24,lo8(-(1))
505 00d0 8093 0000 sts OSIntNesting,r24
506 .L31:
507 00d4 0895 ret
508 /* epilogue: frame size=0 */
509 00d6 0895 ret
510 /* epilogue end (size=1) */
511 /* function OSIntEnter size 13 (12) */
512 .LFE5:
514 .global OSIntExit
516 OSIntExit:
517 .LFB6:
518 .LM41:
519 /* prologue: frame size=0 */
520 /* prologue end (size=0) */
521 .LM42:
522 00d8 8091 0000 lds r24,OSRunning
523 00dc 8130 cpi r24,lo8(1)
524 00de 09F0 breq .+2
525 00e0 4FC0 rjmp .L34
526 .LM43:
527 /* #APP */
528 00e2 F894 cli
529 .LM44:
530 /* #NOAPP */
531 00e4 8091 0000 lds r24,OSIntNesting
532 00e8 8823 tst r24
533 00ea 19F0 breq .L36
534 .LM45:
535 00ec 8150 subi r24,lo8(-(-1))
536 00ee 8093 0000 sts OSIntNesting,r24
537 .L36:
538 .LM46:
539 00f2 8091 0000 lds r24,OSIntNesting
540 00f6 8823 tst r24
541 00f8 09F0 breq .+2
542 00fa 41C0 rjmp .L37
543 .LM47:
544 00fc 8091 0000 lds r24,OSLockNesting
545 0100 8823 tst r24
546 0102 E9F5 brne .L37
547 .LM48:
548 0104 8091 0000 lds r24,OSRdyGrp
549 0108 E82F mov r30,r24
550 010a FF27 clr r31
551 010c E050 subi r30,lo8(-(OSUnMapTbl))
552 010e F040 sbci r31,hi8(-(OSUnMapTbl))
553 0110 8081 ld r24,Z
554 .LM49:
555 0112 9927 clr r25
556 0114 FC01 movw r30,r24
557 0116 E050 subi r30,lo8(-(OSRdyTbl))
558 0118 F040 sbci r31,hi8(-(OSRdyTbl))
559 011a 2081 ld r18,Z
560 011c E22F mov r30,r18
561 011e FF27 clr r31
562 0120 E050 subi r30,lo8(-(OSUnMapTbl))
563 0122 F040 sbci r31,hi8(-(OSUnMapTbl))
564 0124 E081 ld r30,Z
565 0126 23E0 ldi r18,3
566 0128 880F 1: lsl r24
567 012a 991F rol r25
568 012c 2A95 dec r18
569 012e E1F7 brne 1b
570 0130 E80F add r30,r24
571 0132 E093 0000 sts OSPrioHighRdy,r30
572 .LM50:
573 0136 8091 0000 lds r24,OSPrioCur
574 013a E817 cp r30,r24
575 013c 01F1 breq .L37
576 .LM51:
577 013e FF27 clr r31
578 0140 EE0F add r30,r30
579 0142 FF1F adc r31,r31
580 0144 E050 subi r30,lo8(-(OSTCBPrioTbl))
581 0146 F040 sbci r31,hi8(-(OSTCBPrioTbl))
582 0148 8081 ld r24,Z
583 014a 9181 ldd r25,Z+1
584 014c 9093 0000 sts (OSTCBHighRdy)+1,r25
585 0150 8093 0000 sts OSTCBHighRdy,r24
586 .LM52:
587 0154 8091 0000 lds r24,OSCtxSwCtr
588 0158 9091 0000 lds r25,(OSCtxSwCtr)+1
589 015c A091 0000 lds r26,(OSCtxSwCtr)+2
590 0160 B091 0000 lds r27,(OSCtxSwCtr)+3
591 0164 0196 adiw r24,1
592 0166 A11D adc r26,__zero_reg__
593 0168 B11D adc r27,__zero_reg__
594 016a 8093 0000 sts OSCtxSwCtr,r24
595 016e 9093 0000 sts (OSCtxSwCtr)+1,r25
596 0172 A093 0000 sts (OSCtxSwCtr)+2,r26
597 0176 B093 0000 sts (OSCtxSwCtr)+3,r27
598 .LM53:
599 017a 0E94 0000 call OSIntCtxSw
600 .L37:
601 .LM54:
602 /* #APP */
603 017e 7894 sei
604 /* #NOAPP */
605 .L34:
606 0180 0895 ret
607 /* epilogue: frame size=0 */
608 0182 0895 ret
609 /* epilogue end (size=1) */
610 /* function OSIntExit size 88 (87) */
611 .LFE6:
613 .global OSSchedLock
615 OSSchedLock:
616 .LFB7:
617 .LM55:
618 /* prologue: frame size=0 */
619 /* prologue end (size=0) */
620 .LM56:
621 0184 8091 0000 lds r24,OSRunning
622 0188 8130 cpi r24,lo8(1)
623 018a 49F4 brne .L40
624 .LM57:
625 /* #APP */
626 018c F894 cli
627 .LM58:
628 /* #NOAPP */
629 018e 8091 0000 lds r24,OSLockNesting
630 0192 8F3F cpi r24,lo8(-1)
631 0194 19F0 breq .L42
632 .LM59:
633 0196 8F5F subi r24,lo8(-(1))
634 0198 8093 0000 sts OSLockNesting,r24
635 .L42:
636 .LM60:
637 /* #APP */
638 019c 7894 sei
639 /* #NOAPP */
640 .L40:
641 019e 0895 ret
642 /* epilogue: frame size=0 */
643 01a0 0895 ret
644 /* epilogue end (size=1) */
645 /* function OSSchedLock size 17 (16) */
646 .LFE7:
648 .global OSStart
650 OSStart:
651 .LFB9:
652 .LM61:
653 /* prologue: frame size=0 */
654 /* prologue end (size=0) */
655 .LM62:
656 01a2 8091 0000 lds r24,OSRunning
657 01a6 8823 tst r24
658 01a8 69F5 brne .L43
659 .LM63:
660 01aa 8091 0000 lds r24,OSRdyGrp
661 01ae E82F mov r30,r24
662 01b0 FF27 clr r31
663 01b2 E050 subi r30,lo8(-(OSUnMapTbl))
664 01b4 F040 sbci r31,hi8(-(OSUnMapTbl))
665 01b6 8081 ld r24,Z
666 .LM64:
667 01b8 9927 clr r25
668 01ba FC01 movw r30,r24
669 01bc E050 subi r30,lo8(-(OSRdyTbl))
670 01be F040 sbci r31,hi8(-(OSRdyTbl))
671 01c0 2081 ld r18,Z
672 01c2 E22F mov r30,r18
673 01c4 FF27 clr r31
674 01c6 E050 subi r30,lo8(-(OSUnMapTbl))
675 01c8 F040 sbci r31,hi8(-(OSUnMapTbl))
676 01ca 2081 ld r18,Z
677 .LM65:
678 01cc 33E0 ldi r19,3
679 01ce 880F 1: lsl r24
680 01d0 991F rol r25
681 01d2 3A95 dec r19
682 01d4 E1F7 brne 1b
683 01d6 280F add r18,r24
684 01d8 2093 0000 sts OSPrioHighRdy,r18
685 .LM66:
686 01dc 2093 0000 sts OSPrioCur,r18
687 .LM67:
688 01e0 E22F mov r30,r18
689 01e2 FF27 clr r31
690 01e4 EE0F add r30,r30
691 01e6 FF1F adc r31,r31
692 01e8 E050 subi r30,lo8(-(OSTCBPrioTbl))
693 01ea F040 sbci r31,hi8(-(OSTCBPrioTbl))
694 01ec 8081 ld r24,Z
695 01ee 9181 ldd r25,Z+1
696 01f0 9093 0000 sts (OSTCBHighRdy)+1,r25
697 01f4 8093 0000 sts OSTCBHighRdy,r24
698 .LM68:
699 01f8 9093 0000 sts (OSTCBCur)+1,r25
700 01fc 8093 0000 sts OSTCBCur,r24
701 .LM69:
702 0200 0E94 0000 call OSStartHighRdy
703 .L43:
704 0204 0895 ret
705 /* epilogue: frame size=0 */
706 0206 0895 ret
707 /* epilogue end (size=1) */
708 /* function OSStart size 51 (50) */
709 .LFE9:
711 .global OSTimeTick
713 OSTimeTick:
714 .LFB11:
715 .LM70:
716 /* prologue: frame size=0 */
717 0208 CF93 push r28
718 020a DF93 push r29
719 /* prologue end (size=2) */
720 .LM71:
721 020c 0E94 0000 call OSTimeTickHook
722 .LM72:
723 0210 9091 0000 lds r25,OSRunning
724 0214 9130 cpi r25,lo8(1)
725 0216 09F0 breq .+2
726 0218 49C0 rjmp .L45
727 .LM73:
728 021a A091 0000 lds r26,OSTCBList
729 021e B091 0000 lds r27,(OSTCBList)+1
730 .LM74:
731 0222 ED01 movw r28,r26
732 0224 8C85 ldd r24,Y+12
733 0226 8F30 cpi r24,lo8(15)
734 0228 09F4 brne .+2
735 022a 40C0 rjmp .L45
736 022c 392F mov r19,r25
737 022e 41E0 ldi r20,lo8(1)
738 0230 50E0 ldi r21,hi8(1)
739 .L54:
740 .LM75:
741 /* #APP */
742 0232 F894 cli
743 .LM76:
744 /* #NOAPP */
745 0234 FD01 movw r30,r26
746 0236 8085 ldd r24,Z+8
747 0238 9185 ldd r25,Z+9
748 023a 0097 sbiw r24,0
749 023c 79F1 breq .L49
750 .LM77:
751 023e 0197 sbiw r24,1
752 0240 8087 std Z+8,r24
753 0242 9187 std Z+9,r25
754 0244 892B or r24,r25
755 0246 51F5 brne .L49
756 .LM78:
757 0248 2285 ldd r18,Z+10
758 024a 822F mov r24,r18
759 024c 9927 clr r25
760 024e 8773 andi r24,lo8(55)
761 0250 9070 andi r25,hi8(55)
762 0252 892B or r24,r25
763 0254 21F0 breq .L51
764 .LM79:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -