📄 ucos_ii.lst
字号:
673 0298 8083 st Z,r24
674 .L36:
675 029a C901 movw r24,r18
676 /* epilogue: frame size=0 */
677 029c DF91 pop r29
678 029e CF91 pop r28
679 02a0 1F91 pop r17
680 02a2 0F91 pop r16
681 02a4 0895 ret
682 /* epilogue end (size=5) */
683 /* function OS_EventTaskRdy size 87 (78) */
684 .size OS_EventTaskRdy, .-OS_EventTaskRdy
GAS LISTING C:\DOCUME~1\捞悼荐\LOCALS~1\Temp/cc0Kaaaa.s page 13
685 .global OS_EventTaskWait
686 .type OS_EventTaskWait, @function
687 OS_EventTaskWait:
688 /* prologue: frame size=0 */
689 02a6 CF93 push r28
690 02a8 DF93 push r29
691 /* prologue end (size=2) */
692 02aa EC01 movw r28,r24
693 02ac A091 0000 lds r26,OSTCBCur
694 02b0 B091 0000 lds r27,(OSTCBCur)+1
695 02b4 FD01 movw r30,r26
696 02b6 8683 std Z+6,r24
697 02b8 9783 std Z+7,r25
698 02ba 8585 ldd r24,Z+13
699 02bc 282F mov r18,r24
700 02be 3327 clr r19
701 02c0 2050 subi r18,lo8(-(OSRdyTbl))
702 02c2 3040 sbci r19,hi8(-(OSRdyTbl))
703 02c4 9685 ldd r25,Z+14
704 02c6 9095 com r25
705 02c8 F901 movw r30,r18
706 02ca 8081 ld r24,Z
707 02cc 8923 and r24,r25
708 02ce 8083 st Z,r24
709 02d0 8823 tst r24
710 02d2 41F4 brne .L38
711 02d4 FD01 movw r30,r26
712 02d6 8785 ldd r24,Z+15
713 02d8 8095 com r24
714 02da 9091 0000 lds r25,OSRdyGrp
715 02de 8923 and r24,r25
716 02e0 8093 0000 sts OSRdyGrp,r24
717 .L38:
718 02e4 FD01 movw r30,r26
719 02e6 8585 ldd r24,Z+13
720 02e8 9E01 movw r18,r28
721 02ea 280F add r18,r24
722 02ec 311D adc r19,__zero_reg__
723 02ee F901 movw r30,r18
724 02f0 8681 ldd r24,Z+6
725 02f2 FD01 movw r30,r26
726 02f4 9685 ldd r25,Z+14
727 02f6 892B or r24,r25
728 02f8 F901 movw r30,r18
729 02fa 8683 std Z+6,r24
730 02fc E091 0000 lds r30,OSTCBCur
731 0300 F091 0000 lds r31,(OSTCBCur)+1
732 0304 8981 ldd r24,Y+1
733 0306 9785 ldd r25,Z+15
734 0308 892B or r24,r25
735 030a 8983 std Y+1,r24
736 /* epilogue: frame size=0 */
737 030c DF91 pop r29
738 030e CF91 pop r28
739 0310 0895 ret
740 /* epilogue end (size=3) */
741 /* function OS_EventTaskWait size 54 (49) */
GAS LISTING C:\DOCUME~1\捞悼荐\LOCALS~1\Temp/cc0Kaaaa.s page 14
742 .size OS_EventTaskWait, .-OS_EventTaskWait
743 .global OS_EventTO
744 .type OS_EventTO, @function
745 OS_EventTO:
746 /* prologue: frame size=0 */
747 0312 CF93 push r28
748 0314 DF93 push r29
749 /* prologue end (size=2) */
750 0316 EC01 movw r28,r24
751 0318 E091 0000 lds r30,OSTCBCur
752 031c F091 0000 lds r31,(OSTCBCur)+1
753 0320 8585 ldd r24,Z+13
754 0322 DE01 movw r26,r28
755 0324 A80F add r26,r24
756 0326 B11D adc r27,__zero_reg__
757 0328 9685 ldd r25,Z+14
758 032a 9095 com r25
759 032c FD01 movw r30,r26
760 032e 8681 ldd r24,Z+6
761 0330 8923 and r24,r25
762 0332 8683 std Z+6,r24
763 0334 8823 tst r24
764 0336 49F4 brne .L40
765 0338 E091 0000 lds r30,OSTCBCur
766 033c F091 0000 lds r31,(OSTCBCur)+1
767 0340 9785 ldd r25,Z+15
768 0342 9095 com r25
769 0344 8981 ldd r24,Y+1
770 0346 8923 and r24,r25
771 0348 8983 std Y+1,r24
772 .L40:
773 034a E091 0000 lds r30,OSTCBCur
774 034e F091 0000 lds r31,(OSTCBCur)+1
775 0352 1286 std Z+10,__zero_reg__
776 0354 E091 0000 lds r30,OSTCBCur
777 0358 F091 0000 lds r31,(OSTCBCur)+1
778 035c 1682 std Z+6,__zero_reg__
779 035e 1782 std Z+7,__zero_reg__
780 /* epilogue: frame size=0 */
781 0360 DF91 pop r29
782 0362 CF91 pop r28
783 0364 0895 ret
784 /* epilogue end (size=3) */
785 /* function OS_EventTO size 42 (37) */
786 .size OS_EventTO, .-OS_EventTO
787 .global OS_EventWaitListInit
788 .type OS_EventWaitListInit, @function
789 OS_EventWaitListInit:
790 /* prologue: frame size=0 */
791 /* prologue end (size=0) */
792 0366 FC01 movw r30,r24
793 0368 1182 std Z+1,__zero_reg__
794 036a 1682 std Z+6,__zero_reg__
795 036c 1782 std Z+7,__zero_reg__
796 /* epilogue: frame size=0 */
797 036e 0895 ret
798 /* epilogue end (size=1) */
GAS LISTING C:\DOCUME~1\捞悼荐\LOCALS~1\Temp/cc0Kaaaa.s page 15
799 /* function OS_EventWaitListInit size 5 (4) */
800 .size OS_EventWaitListInit, .-OS_EventWaitListInit
801 .global OS_Sched
802 .type OS_Sched, @function
803 OS_Sched:
804 /* prologue: frame size=0 */
805 /* prologue end (size=0) */
806 /* #APP */
807 0370 F894 cli
808 /* #NOAPP */
809 0372 8091 0000 lds r24,OSIntNesting
810 0376 8823 tst r24
811 0378 09F0 breq .+2
812 037a 42C0 rjmp .L43
813 037c 8091 0000 lds r24,OSLockNesting
814 0380 8823 tst r24
815 0382 F1F5 brne .L43
816 0384 8091 0000 lds r24,OSRdyGrp
817 0388 E82F mov r30,r24
818 038a FF27 clr r31
819 038c E050 subi r30,lo8(-(OSUnMapTbl))
820 038e F040 sbci r31,hi8(-(OSUnMapTbl))
821 0390 8081 ld r24,Z
822 0392 9927 clr r25
823 0394 FC01 movw r30,r24
824 0396 E050 subi r30,lo8(-(OSRdyTbl))
825 0398 F040 sbci r31,hi8(-(OSRdyTbl))
826 039a 2081 ld r18,Z
827 039c E22F mov r30,r18
828 039e FF27 clr r31
829 03a0 E050 subi r30,lo8(-(OSUnMapTbl))
830 03a2 F040 sbci r31,hi8(-(OSUnMapTbl))
831 03a4 E081 ld r30,Z
832 03a6 880F lsl r24
833 03a8 991F rol r25
834 03aa 880F lsl r24
835 03ac 991F rol r25
836 03ae 880F lsl r24
837 03b0 991F rol r25
838 03b2 E80F add r30,r24
839 03b4 E093 0000 sts OSPrioHighRdy,r30
840 03b8 8091 0000 lds r24,OSPrioCur
841 03bc E817 cp r30,r24
842 03be 01F1 breq .L43
843 03c0 FF27 clr r31
844 03c2 EE0F add r30,r30
845 03c4 FF1F adc r31,r31
846 03c6 E050 subi r30,lo8(-(OSTCBPrioTbl))
847 03c8 F040 sbci r31,hi8(-(OSTCBPrioTbl))
848 03ca 8081 ld r24,Z
849 03cc 9181 ldd r25,Z+1
850 03ce 9093 0000 sts (OSTCBHighRdy)+1,r25
851 03d2 8093 0000 sts OSTCBHighRdy,r24
852 03d6 8091 0000 lds r24,OSCtxSwCtr
853 03da 9091 0000 lds r25,(OSCtxSwCtr)+1
854 03de A091 0000 lds r26,(OSCtxSwCtr)+2
855 03e2 B091 0000 lds r27,(OSCtxSwCtr)+3
GAS LISTING C:\DOCUME~1\捞悼荐\LOCALS~1\Temp/cc0Kaaaa.s page 16
856 03e6 0196 adiw r24,1
857 03e8 A11D adc r26,__zero_reg__
858 03ea B11D adc r27,__zero_reg__
859 03ec 8093 0000 sts OSCtxSwCtr,r24
860 03f0 9093 0000 sts (OSCtxSwCtr)+1,r25
861 03f4 A093 0000 sts (OSCtxSwCtr)+2,r26
862 03f8 B093 0000 sts (OSCtxSwCtr)+3,r27
863 03fc 0E94 0000 call OSCtxSw
864 .L43:
865 /* #APP */
866 0400 7894 sei
867 /* #NOAPP */
868 /* epilogue: frame size=0 */
869 0402 0895 ret
870 /* epilogue end (size=1) */
871 /* function OS_Sched size 76 (75) */
872 .size OS_Sched, .-OS_Sched
873 .global OSTimeDly
874 .type OSTimeDly, @function
875 OSTimeDly:
876 /* prologue: frame size=0 */
877 0404 CF93 push r28
878 0406 DF93 push r29
879 /* prologue end (size=2) */
880 0408 9C01 movw r18,r24
881 040a 892B or r24,r25
882 040c F9F0 breq .L45
883 /* #APP */
884 040e F894 cli
885 /* #NOAPP */
886 0410 A091 0000 lds r26,OSTCBCur
887 0414 B091 0000 lds r27,(OSTCBCur)+1
888 0418 ED01 movw r28,r26
889 041a 8D85 ldd r24,Y+13
890 041c E82F mov r30,r24
891 041e FF27 clr r31
892 0420 E050 subi r30,lo8(-(OSRdyTbl))
893 0422 F040 sbci r31,hi8(-(OSRdyTbl))
894 0424 9E85 ldd r25,Y+14
895 0426 9095 com r25
896 0428 8081 ld r24,Z
897 042a 8923 and r24,r25
898 042c 8083 st Z,r24
899 042e 8823 tst r24
900 0430 39F4 brne .L47
901 0432 8F85 ldd r24,Y+15
902 0434 8095 com r24
903 0436 9091 0000 lds r25,OSRdyGrp
904 043a 8923 and r24,r25
905 043c 8093 0000 sts OSRdyGrp,r24
906 .L47:
907 0440 FD01 movw r30,r26
908 0442 2087 std Z+8,r18
909 0444 3187 std Z+9,r19
910 /* #APP */
911 0446 7894 sei
912 /* #NOAPP */
GAS LISTING C:\DOCUME~1\捞悼荐\LOCALS~1\Temp/cc0Kaaaa.s page 17
913 0448 0E94 0000 call OS_Sched
914 .L45:
915 /* epilogue: frame size=0 */
916 044c DF91 pop r29
917 044e CF91 pop r28
918 0450 0895 ret
919 /* epilogue end (size=3) */
920 /* function OSTimeDly size 41 (36) */
921 .size OSTimeDly, .-OSTimeDly
922 .global OSStatInit
923 .type OSStatInit, @function
924 OSStatInit:
925 /* prologue: frame size=0 */
926 /* prologue end (size=0) */
927 0452 82E0 ldi r24,lo8(2)
928 0454 90E0 ldi r25,hi8(2)
929 0456 0E94 0000 call OSTimeDly
930 /* #APP */
931 045a F894 cli
932 /* #NOAPP */
933 045c 1092 0000 sts OSIdleCtr,__zero_reg__
934 0460 1092 0000 sts (OSIdleCtr)+1,__zero_reg__
935 0464 1092 0000 sts (OSIdleCtr)+2,__zero_reg__
936 0468 1092 0000 sts (OSIdleCtr)+3,__zero_reg__
937 /* #APP */
938 046c 7894 sei
939 /* #NOAPP */
940 046e 82E3 ldi r24,lo8(50)
941 0470 90E0 ldi r25,hi8(50)
942 0472 0E94 0000 call OSTimeDly
943 /* #APP */
944 0476 F894 cli
945 /* #NOAPP */
946 0478 8091 0000 lds r24,OSIdleCtr
947 047c 9091 0000 lds r25,(OSIdleCtr)+1
948 0480 A091 0000 lds r26,(OSIdleCtr)+2
949 0484 B091 0000 lds r27,(OSIdleCtr)+3
950 0488 8093 0000 sts OSIdleCtrMax,r24
951 048c 9093 0000 sts (OSIdleCtrMax)+1,r25
952 0490 A093 0000 sts (OSIdleCtrMax)+2,r26
953 0494 B093 0000 sts (OSIdleCtrMax)+3,r27
954 0498 81E0 ldi r24,lo8(1)
955 049a 8093 0000 sts OSStatRdy,r24
956 /* #APP */
957 049e 7894 sei
958 /* #NOAPP */
959 /* epilogue: frame size=0 */
960 04a0 0895 ret
961 /* epilogue end (size=1) */
962 /* function OSStatInit size 44 (43) */
963 .size OSStatInit, .-OSStatInit
964 .global OSSchedUnlock
965 .type OSSchedUnlock, @function
966 OSSchedUnlock:
967 /* prologue: frame size=0 */
968 /* prologue end (size=0) */
969 04a2 8091 0000 lds r24,OSRunning
GAS LISTING C:\DOCUME~1\捞悼荐\LOCALS~1\Temp/cc0Kaaaa.s page 18
970 04a6 8130 cpi r24,lo8(1)
971 04a8 09F0 breq .L55
972 04aa 0895 ret
973 .L55:
974 /* #APP */
975 04ac F894 cli
976 /* #NOAPP */
977 04ae 8091 0000 lds r24,OSLockNesting
978 04b2 8823 tst r24
979 04b4 59F0 breq .L51
980 04b6 8150 subi r24,lo8(-(-1))
981 04b8 8093 0000 sts OSLockNesting,r24
982 04bc 8823 tst r24
983 04be 21F4 brne .L52
984 04c0 8091 0000 lds r24,OSIntNesting
985 04c4 8823 tst r24
986 04c6 21F0 breq .L56
987 .L52:
988 /* #APP */
989 04c8 7894 sei
990 /* #NOAPP */
991 04ca 0895 ret
992 .L51:
993 /* #APP */
994 04cc 7894 sei
995 /* #NOAPP */
996 04ce 0895 ret
997 .L56:
998 /* #APP */
999 04d0 7894 sei
1000 /* #NOAPP */
1001 04d2 0E94 0000 call OS_Sched
1002 04d6 0895 ret
1003 /* epilogue: frame size=0 */
1004 /* epilogue: noreturn */
1005 /* epilogue end (size=0) */
1006 /* function OSSchedUnlock size 31 (31) */
1007 .size OSSchedUnlock, .-OSSchedUnlock
1008 .global OS_TaskIdle
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -