📄 un_autocameracontrol.asm
字号:
;* .M units 0 0
;* .X cross paths 0 0
;* .T address paths 1* 0
;* Long read paths 1* 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) 1* 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
;*
;* C80:
;* 0 LDBU .D1T1 *A3++(2),A6 ; |358|
;* || [ B0] BDEC .S2 C80,B0 ; |360|
;* 1 NOP 4
;* 5 ADDU .L1 A6,A5:A4,A5:A4 ; |358|
;* ; BRANCH OCCURS ; |360|
;*----------------------------------------------------------------------------*
L8: ; PIPED LOOP PROLOG
;** --------------------------------------------------------------------------*
L9: ; PIPED LOOP KERNEL
[ B0] BDEC .S2 L9,B0 ; |360| <0,0>
|| LDBU .D1T1 *A3++(2),A6 ; |358| <0,0>
NOP 4
ADDU .L1 A6,A5:A4,A5:A4 ; |358| <0,5>
;** --------------------------------------------------------------------------*
L10: ; PIPED LOOP EPILOG
;** --------------------------------------------------------------------------*
MVKL .S2 __divul,B6 ; |361|
MVKH .S2 __divul,B6 ; |361|
;** --------------------------------------------------------------------------*
L11:
CALL .S2 B6 ; |361|
SHR .S1 A19,31,A3 ; |361|
MV .D2X A19,B4 ; |361|
ADDKPC .S2 RL1,B3,1 ; |361|
MV .D2X A3,B5 ; |361|
RL1: ; CALL OCCURS ; |361|
B .S1 L47 ; |362|
MVK .S1 0x1,A4 ; |369|
|| STW .D1T1 A4,*A14 ; |367|
|| LDW .D2T2 *+SP(28),B3 ; |370|
MV .S1X SP,A31 ; |370|
LDDW .D1T1 *+A31(16),A13:A12 ; |370|
LDDW .D2T2 *+SP(32),B11:B10 ; |370|
LDDW .D1T1 *+A31(8),A11:A10 ; |370|
; BRANCH OCCURS ; |362|
;** --------------------------------------------------------------------------*
L12:
[!B1] BNOP .S1 L46,1 ; |340|
ADD .D2 1,B5,B4 ; |342|
SHR .S2 B4,1,B0 ; |342|
|| ADD .D1 1,A22,A9
|| ADD .S1 A22,A22,A16
|| MV .L1X B0,A8
[!B1] MVKL .S2 __divul,B6 ; |367|
[!B1] MVKH .S2 __divul,B6 ; |367|
; BRANCH OCCURS ; |340|
;** --------------------------------------------------------------------------*
CMPGT .L1 A22,0,A0 ; |343|
;** --------------------------------------------------------------------------*
;** BEGIN LOOP L13
;** --------------------------------------------------------------------------*
L13:
[!A0] B .S1 L17 ; |343|
MV .D1 A8,A3 ; |342|
|| [ A0] MV .S2X A20,B4
|| [!A0] SUB .D2 B0,1,B0 ; |350|
[ A0] MV .D2X A10,B8
[ A0] MV .D1 A12,A4
|| [ A0] MV .D2X A11,B9
|| [ A0] ADD .S1 A22,A3,A7
[ A0] MVK .D1 0x1,A1 ; init prolog collapse predicate
|| [ A0] MV .L1 A13,A5
|| [ A0] MV .D2X A21,B5
|| [ A0] SHR .S1 A9,1,A6 ; |345|
[ A0] SUB .D1 A3,2,A3
|| [ A0] SUB .S1 A6,1,A0
|| [ A0] ADD .L1 A6,A23,A23 ; |348|
|| [ A0] SUB .D2X A7,2,B16
; BRANCH OCCURS ; |343|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;*
;* Loop source line : 343
;* Loop opening brace source line : 344
;* Loop closing brace source line : 349
;* Known Minimum Trip Count : 1
;* Known Max Trip Count Factor : 1
;* Loop Carried Dependency Bound(^) : 2
;* Unpartitioned Resource Bound : 3
;* Partitioned Resource Bound(*) : 3
;* Resource Partition:
;* A-side B-side
;* .L units 1 2
;* .S units 1 2
;* .D units 2 2
;* .M units 0 0
;* .X cross paths 0 1
;* .T address paths 2 2
;* Long read paths 1 2
;* Long write paths 0 0
;* Logical ops (.LS) 0 0 (.L or .S unit)
;* Addition ops (.LSD) 0 3 (.L or .S or .D unit)
;* Bound(.L .S .LS) 1 2
;* Bound(.L .S .D .LS .LSD) 2 3*
;*
;* Searching for software pipeline schedule at ...
;* ii = 6 Schedule found with 2 iterations in parallel
;*
;* Register Usage Table:
;* +-----------------------------------------------------------------+
;* |AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB|
;* |00000000001111111111222222222233|00000000001111111111222222222233|
;* |01234567890123456789012345678901|01234567890123456789012345678901|
;* |--------------------------------+--------------------------------|
;* 0: |** ***** | ** ** ** * |
;* 1: |** *** * | * ** **** |
;* 2: |** **** | ** ** * ** |
;* 3: |** ***** | * * ** *** |
;* 4: |** ***** | * **** **** |
;* 5: |** ***** | ** ** **** |
;* +-----------------------------------------------------------------+
;*
;* Done
;*
;* Loop is interruptible
;* Epilog not removed
;* Collapsed epilog stages : 0
;* Collapsed prolog stages : 1
;* Minimum required memory pad : 0 bytes
;*
;* For further improvement on this loop, try option -mh2
;*
;* Minimum safe trip count : 1
;*----------------------------------------------------------------------------*
;* SINGLE SCHEDULED ITERATION
;*
;* C121:
;* 0 LDBU .D1T1 *++A3(2),A6 ; |345|
;* 1 LDBU .D1T1 *+A3(1),A7 ; |346|
;* || LDBU .D2T2 *++B16(2),B17 ; |346|
;* 2 LDBU .D2T2 *+B16(1),B19 ; |347|
;* 3 NOP 2
;* 5 ADDU .L1 A6,A5:A4,A5:A4 ; |345|
;* || MV .D2 B5,B18 ; |346| ^
;* || [ A0] BDEC .S1 C121,A0 ; |349|
;* 6 ADD .D2X B17,A7,B5 ; |346|
;* 7 SHR .S2 B5,1,B6 ; |346|
;* || ADDU .L2 B19,B9:B8,B9:B8 ; |347|
;* 8 SHR .S2 B6,31,B7 ; |346|
;* 9 ADDU .L2 B4,B7:B6,B5:B4 ; |346| ^
;* 10 ADD .D2 B18,B5,B5 ; |346| ^
;* ; BRANCH OCCURS ; |349|
;*----------------------------------------------------------------------------*
L14: ; PIPED LOOP PROLOG
;** --------------------------------------------------------------------------*
L15: ; PIPED LOOP KERNEL
[!A1] ADDU .L1 A6,A5:A4,A5:A4 ; |345| <0,5>
|| MV .D2 B5,B18 ; |346| <0,5> ^
|| [ A0] BDEC .S1 L15,A0 ; |349| <0,5>
[!A1] ADD .D2X B17,A7,B5 ; |346| <0,6>
|| LDBU .D1T1 *++A3(2),A6 ; |345| <1,0>
[!A1] ADDU .L2 B19,B9:B8,B9:B8 ; |347| <0,7>
|| SHR .S2 B5,1,B6 ; |346| <0,7>
|| LDBU .D2T2 *++B16(2),B17 ; |346| <1,1>
|| LDBU .D1T1 *+A3(1),A7 ; |346| <1,1>
SHR .S2 B6,31,B7 ; |346| <0,8>
|| LDBU .D2T2 *+B16(1),B19 ; |347| <1,2>
[!A1] ADDU .L2 B4,B7:B6,B5:B4 ; |346| <0,9> ^
[ A1] SUB .D1 A1,1,A1 ; <0,10>
|| [!A1] ADD .D2 B18,B5,B5 ; |346| <0,10> ^
;** --------------------------------------------------------------------------*
L16: ; PIPED LOOP EPILOG
;** --------------------------------------------------------------------------*
ADDU .L1 A6,A5:A4,A5:A4 ; |345| (E) <1,5>
|| MV .D2 B5,B18 ; |346| (E) <1,5> ^
MV .D1 A4,A12
|| MV .S1 A5,A13
|| ADD .D2X B17,A7,B5 ; |346| (E) <1,6>
ADDU .L2 B19,B9:B8,B9:B8 ; |347| (E) <1,7>
|| SHR .S2 B5,1,B6 ; |346| (E) <1,7>
SHR .S2 B6,31,B7 ; |346| (E) <1,8>
MV .D1X B9,A11
|| ADDU .L2 B4,B7:B6,B5:B4 ; |346| (E) <1,9> ^
MV .D1X B8,A10
|| ADD .D2 B18,B5,B5 ; |346| (E) <1,10> ^
MV .D1X B4,A20
MV .D1X B5,A21
SUB .D2 B0,1,B0 ; |350|
;** --------------------------------------------------------------------------*
L17:
[ B0] BNOP .S1 L13,4 ; |350|
ADD .D1 A16,A8,A8 ; |350|
|| [ B0] CMPGT .L1 A22,0,A0 ; |343|
; BRANCH OCCURS ; |350|
;** --------------------------------------------------------------------------*
BNOP .S1 L46,3 ; |350|
MVKL .S2 __divul,B6 ; |367|
MVKH .S2 __divul,B6 ; |367|
; BRANCH OCCURS ; |350|
;** --------------------------------------------------------------------------*
L18:
[!B2] BNOP .S1 L46,1 ; |326|
ADD .D2 1,B5,B4 ; |328|
SHR .S2 B4,1,B1 ; |328|
|| ADD .D2X 1,A22,B9
|| ADD .D1 A22,A22,A24
|| MV .S1X B0,A19
[!B2] MVKL .S2 __divul,B6 ; |367|
[!B2] MVKH .S2 __divul,B6 ; |367|
; BRANCH OCCURS ; |326|
;** --------------------------------------------------------------------------*
CMPGT .L1 A22,0,A0 ; |329|
;** --------------------------------------------------------------------------*
;** BEGIN LOOP L19
;** --------------------------------------------------------------------------*
L19:
[!A0] BNOP .S1 L26,3 ; |329|
MV .D1 A19,A17 ; |328|
|| [ A0] SHR .S2 B9,1,B0 ; |331|
|| [!A0] SUB .D2 B1,1,B1 ; |336|
[ A0] CMPGT .L2 B0,1,B2
; BRANCH OCCURS ; |329|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -