📄 protocal.asm
字号:
|| [!B0] LDW .D2T2 *++SP(8),B3 ; |22|
NOP 2
; BRANCH OCCURS ; |18|
;** --------------------------------------------------------------------------*
CALLRET .S2 B4 ; |22|
LDW .D2T2 *++SP(8),B3 ; |22|
NOP 4
RL2: ; CALL OCCURS ; |22| ; bypass ___dt__6CiLinkFv upon return
;** --------------------------------------------------------------------------*
L5:
NOP 2
RETNOP .S2 B3,5 ; |22|
; BRANCH OCCURS ; |22|
.sect ".text"
.global _ShrinkString__9CTerminalFPci
;******************************************************************************
;* FUNCTION NAME: CTerminal::_ShrinkString(char *, int) *
;* *
;* Regs Modified : A0,A3,A4,B0,B4,B5 *
;* Regs Used : A0,A3,A4,A6,B0,B3,B4,B5 *
;* Local Frame Size : 0 Args + 0 Auto + 0 Save = 0 byte *
;******************************************************************************
_ShrinkString__9CTerminalFPci:
;** --------------------------------------------------------------------------*
MVK .S1 30,A3 ; |542|
CMPLT .L1 A6,A3,A3 ; |542|
XOR .D1 1,A3,A3 ; |542|
|| CMPLT .L1 A6,0,A4 ; |542|
OR .D1 A3,A4,A0 ; |542|
[ A0] RETNOP .S2 B3,2 ; |548|
MVK .S2 30,B5 ; |545|
SUB .S2X B5,A6,B4 ; |545|
|| ADD .D1X A6,B4,A4
[!A0] SUB .D2 B4,1,B0
; BRANCH OCCURS ; |548| ; chained return
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;*
;* Loop source line : 544
;* Loop closing brace source line : 545
;* Known Minimum Trip Count : 1
;* Known Max Trip Count Factor : 1
;* Loop Carried Dependency Bound(^) : 0
;* Unpartitioned Resource Bound : 1
;* Partitioned Resource Bound(*) : 2
;* Resource Partition:
;* A-side B-side
;* .L units 0 0
;* .S units 0 1
;* .D units 2* 0
;* .M units 0 0
;* .X cross paths 0 0
;* .T address paths 2* 0
;* Long read paths 0 0
;* Long write paths 0 0
;* Logical ops (.LS) 0 0 (.L or .S unit)
;* Addition ops (.LSD) 0 0 (.L or .S or .D unit)
;* Bound(.L .S .LS) 0 1
;* Bound(.L .S .D .LS .LSD) 1 1
;*
;* Searching for software pipeline schedule at ...
;* ii = 6 Schedule found with 1 iterations in parallel
;*
;* Register Usage Table:
;* +-----------------------------------------------------------------+
;* |AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB|
;* |00000000001111111111222222222233|00000000001111111111222222222233|
;* |01234567890123456789012345678901|01234567890123456789012345678901|
;* |--------------------------------+--------------------------------|
;* 0: | * |* |
;* 1: | ** |* |
;* 2: | ** |* |
;* 3: | ** |* |
;* 4: | ** |* |
;* 5: | ** |* |
;* +-----------------------------------------------------------------+
;*
;* Done
;*
;* Loop is interruptible
;* Collapsed epilog stages : 0
;* Collapsed prolog stages : 0
;*
;* Minimum safe trip count : 1
;*----------------------------------------------------------------------------*
;* SINGLE SCHEDULED ITERATION
;*
;* C141:
;* 0 LDB .D1T1 *+A4(1),A3 ; |545|
;* || [ B0] BDEC .S2 C141,B0 ; |545|
;* 1 NOP 4
;* 5 STB .D1T1 A3,*A4++ ; |545|
;* ; BRANCH OCCURS ; |545|
;*----------------------------------------------------------------------------*
L6: ; PIPED LOOP PROLOG
;** --------------------------------------------------------------------------*
L7: ; PIPED LOOP KERNEL
[ B0] BDEC .S2 L7,B0 ; |545| <0,0>
|| LDB .D1T1 *+A4(1),A3 ; |545| <0,0>
NOP 4
STB .D1T1 A3,*A4++ ; |545| <0,5>
;** --------------------------------------------------------------------------*
L8: ; PIPED LOOP EPILOG
;** --------------------------------------------------------------------------*
RETNOP .S2 B3,5 ; |548|
; BRANCH OCCURS ; |548|
.sect ".text"
.global _LinkCheckSum__6CiLinkFPUsi
;******************************************************************************
;* FUNCTION NAME: CiLink::_LinkCheckSum(unsigned short *, int) *
;* *
;* Regs Modified : A0,A3,A4,A5,B0,B4,SP *
;* Regs Used : A0,A3,A4,A5,A6,B0,B3,B4,SP *
;* Local Frame Size : 0 Args + 4 Auto + 0 Save = 4 byte *
;******************************************************************************
_LinkCheckSum__6CiLinkFPUsi:
;** --------------------------------------------------------------------------*
CMPLT .L2X A6,2,B0 ; |323|
[ B0] BNOP .S1 L12,1 ; |323|
MV .D1 A6,A0 ; |321|
AND .D1 -2,A0,A5 ; |326|
ZERO .S1 A4 ; |322|
|| SUB .D2 SP,8,SP ; |321|
|| MV .L1X B4,A3 ; |321|
|| SHR .S2X A0,1,B4 ; |325|
[!B0] SUB .D1 A0,A5,A0 ; |326|
|| [!B0] SUB .D2 B4,1,B0
; BRANCH OCCURS ; |323|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;*
;* Loop source line : 323
;* Loop opening brace source line : 324
;* Loop closing brace source line : 327
;* Known Minimum Trip Count : 1
;* Known Max Trip Count Factor : 1
;* Loop Carried Dependency Bound(^) : 0
;* Unpartitioned Resource Bound : 1
;* Partitioned Resource Bound(*) : 1
;* Resource Partition:
;* A-side B-side
;* .L units 0 0
;* .S units 0 1*
;* .D units 1* 0
;* .M units 0 0
;* .X cross paths 0 0
;* .T address paths 1* 0
;* Long read paths 0 0
;* Long write paths 0 0
;* Logical ops (.LS) 0 0 (.L or .S unit)
;* Addition ops (.LSD) 1 0 (.L or .S or .D unit)
;* Bound(.L .S .LS) 0 1*
;* Bound(.L .S .D .LS .LSD) 1* 1*
;*
;* Searching for software pipeline schedule at ...
;* ii = 6 Schedule found with 1 iterations in parallel
;*
;* Register Usage Table:
;* +-----------------------------------------------------------------+
;* |AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB|
;* |00000000001111111111222222222233|00000000001111111111222222222233|
;* |01234567890123456789012345678901|01234567890123456789012345678901|
;* |--------------------------------+--------------------------------|
;* 0: | ** |* |
;* 1: | *** |* |
;* 2: | *** |* |
;* 3: | *** |* |
;* 4: | *** |* |
;* 5: | *** |* |
;* +-----------------------------------------------------------------+
;*
;* Done
;*
;* Loop is interruptible
;* Collapsed epilog stages : 0
;* Collapsed prolog stages : 0
;*
;* Minimum safe trip count : 1
;*----------------------------------------------------------------------------*
;* SINGLE SCHEDULED ITERATION
;*
;* C194:
;* 0 LDHU .D1T1 *A3++,A5 ; |325|
;* || [ B0] BDEC .S2 C194,B0 ; |327|
;* 1 NOP 4
;* 5 ADD .D1 A5,A4,A4 ; |325|
;* ; BRANCH OCCURS ; |327|
;*----------------------------------------------------------------------------*
L9: ; PIPED LOOP PROLOG
;** --------------------------------------------------------------------------*
L10: ; PIPED LOOP KERNEL
[ B0] BDEC .S2 L10,B0 ; |327| <0,0>
|| LDHU .D1T1 *A3++,A5 ; |325| <0,0>
NOP 4
ADD .D1 A5,A4,A4 ; |325| <0,5>
;** --------------------------------------------------------------------------*
L11: ; PIPED LOOP EPILOG
;** --------------------------------------------------------------------------*
L12:
[ A0] LDBU .D1T1 *A3,A3 ; |329|
NOP 4
[ A0] ADD .D1 A3,A4,A4 ; |329|
SHRU .S1 A4,16,A5 ; |330|
RET .S2 B3 ; |333|
|| EXTU .S1 A4,16,16,A3 ; |330|
ADD .D1 A3,A5,A3 ; |330|
SHRU .S1 A3,16,A4 ; |331|
ADD .D1 A3,A4,A4 ; |331|
NOT .D1 A4,A4 ; |332|
ADD .S2 8,SP,SP ; |333|
|| STW .D2T1 A3,*+SP(4) ; |330|
|| EXTU .S1 A4,16,16,A4 ; |332|
; BRANCH OCCURS ; |333|
.sect ".text"
.global _LinkIPReply__6CiLinkFv
;******************************************************************************
;* FUNCTION NAME: CiLink::_LinkIPReply() *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6, *
;* B7,B8,B9,SP,A16,A17,A18,A19,A20,A21,A22,A23,A24, *
;* A25,A26,A27,A28,A29,A30,A31,B16,B17,B18,B19,B20, *
;* B21,B22,B23,B24,B25,B26,B27,B28,B29,B30,B31 *
;* Regs Used : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6, *
;* B7,B8,B9,SP,A16,A17,A18,A19,A20,A21,A22,A23,A24, *
;* A25,A26,A27,A28,A29,A30,A31,B16,B17,B18,B19,B20, *
;* B21,B22,B23,B24,B25,B26,B27,B28,B29,B30,B31 *
;* Local Frame Size : 0 Args + 0 Auto + 4 Save = 4 byte *
;******************************************************************************
_LinkIPReply__6CiLinkFv:
;** --------------------------------------------------------------------------*
MVKL .S1 _g_nNormStatus,A3 ; |123|
MVKH .S1 _g_nNormStatus,A3 ; |123|
LDW .D1T1 *A3,A0 ; |123|
NOP 2
MV .D1 A4,A7 ; |122|
STW .D2T2 B3,*SP--(8) ; |122|
[!A0] B .S1 L13 ; |123|
MVKL .S1 _g_nPrioStatus,A3 ; |123|
[!A0] MVKL .S2 _LinkCheckSum__6CiLinkFPUsi,B6 ; |127|
|| MVKH .S1 _g_nPrioStatus,A3 ; |123|
[ A0] LDW .D1T1 *A3,A0 ; |123|
|| [!A0] MVKH .S2 _LinkCheckSum__6CiLinkFPUsi,B6 ; |127|
NOP 2
; BRANCH OCCURS ; |123|
;** --------------------------------------------------------------------------*
MVKL .S2 _g_nMakeCfgStatus,B5 ; |123|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -