📄 un_autocameracontrol.asm
字号:
|| MV .S1 A6,A20
|| ADDU .L2 B8,B5:B4,B5:B4 ; |304| (E) <1,10>
NOP 1
MV .D1X B5,A11
MV .D1X B4,A10
;** --------------------------------------------------------------------------*
L40:
SUB .D2 B1,1,B1 ; |307|
;** --------------------------------------------------------------------------*
L41:
[ B1] BNOP .S1 L34,4 ; |307|
ADD .D1 A19,A24,A24 ; |307|
|| [ B1] CMPGT .L1 A22,0,A0 ; |300|
; BRANCH OCCURS ; |307|
;** --------------------------------------------------------------------------*
BNOP .S1 L46,3 ; |307|
MVKL .S2 __divul,B6 ; |367|
MVKH .S2 __divul,B6 ; |367|
; BRANCH OCCURS ; |307|
;** --------------------------------------------------------------------------*
L42:
[!A2] BNOP .S1 L46,2 ; |287|
[ A2] MVK .D1 0x1,A0 ; init prolog collapse predicate
|| [ A2] MV .S1 A13,A9
|| [!A2] MV .L1 A19,A23 ; |293|
|| [!A2] MVKL .S2 __divul,B6 ; |367|
[ A2] MV .D1 A12,A8
|| [ A2] MV .S1 A10,A4
|| [ A2] MV .L1 A21,A7
|| [!A2] MVKH .S2 __divul,B6 ; |367|
[ A2] SUB .D2 B4,1,B0
|| [ A2] MV .D1 A11,A5
|| [ A2] MV .S1 A20,A6
|| [ A2] SUB .L1 A3,3,A3
; BRANCH OCCURS ; |287|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;*
;* Loop source line : 287
;* Loop opening brace source line : 288
;* Loop closing brace source line : 292
;* Known Minimum Trip Count : 1
;* Known Max Trip Count Factor : 1
;* Loop Carried Dependency Bound(^) : 0
;* Unpartitioned Resource Bound : 2
;* Partitioned Resource Bound(*) : 3
;* Resource Partition:
;* A-side B-side
;* .L units 3* 0
;* .S units 0 1
;* .D units 3* 0
;* .M units 0 0
;* .X cross paths 0 0
;* .T address paths 3* 0
;* Long read paths 3* 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) 2 1
;* Bound(.L .S .D .LS .LSD) 2 1
;*
;* 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 -mh3
;*
;* Minimum safe trip count : 1
;*----------------------------------------------------------------------------*
;* SINGLE SCHEDULED ITERATION
;*
;* C335:
;* 0 LDBU .D1T1 *++A3(3),A16 ; |289|
;* 1 LDBU .D1T1 *+A3(1),A17 ; |290|
;* 2 LDBU .D1T1 *+A3(2),A18 ; |291|
;* || [ B0] BDEC .S2 C335,B0 ; |292|
;* 3 NOP 2
;* 5 ADDU .L1 A16,A5:A4,A5:A4 ; |289|
;* 6 ADDU .L1 A17,A7:A6,A7:A6 ; |290|
;* 7 ADDU .L1 A18,A9:A8,A9:A8 ; |291|
;* ; BRANCH OCCURS ; |292|
;*----------------------------------------------------------------------------*
L43: ; PIPED LOOP PROLOG
;** --------------------------------------------------------------------------*
L44: ; PIPED LOOP KERNEL
[ B0] BDEC .S2 L44,B0 ; |292| <0,2>
|| [!A0] LDBU .D1T1 *+A3(2),A18 ; |291| <0,2>
NOP 2
[!A0] ADDU .L1 A16,A5:A4,A5:A4 ; |289| <0,5>
[!A0] ADDU .L1 A17,A7:A6,A7:A6 ; |290| <0,6>
|| LDBU .D1T1 *++A3(3),A16 ; |289| <1,0>
[ A0] SUB .S1 A0,1,A0 ; <0,7>
|| [!A0] ADDU .L1 A18,A9:A8,A9:A8 ; |291| <0,7>
|| LDBU .D1T1 *+A3(1),A17 ; |290| <1,1>
;** --------------------------------------------------------------------------*
L45: ; PIPED LOOP EPILOG
;** --------------------------------------------------------------------------*
LDBU .D1T1 *+A3(2),A18 ; |291| (E) <1,2>
MV .D1 A19,A23 ; |293|
MVKL .S2 __divul,B6 ; |367|
ADDU .L1 A16,A5:A4,A5:A4 ; |289| (E) <1,5>
ADDU .L1 A17,A7:A6,A7:A6 ; |290| (E) <1,6>
|| MV .S1 A5,A11
|| MV .D1 A4,A10
ADDU .L1 A18,A9:A8,A9:A8 ; |291| (E) <1,7>
|| MV .S1 A7,A21
|| MV .D1 A6,A20
MV .S1 A9,A13
|| MV .D1 A8,A12
MVKH .S2 __divul,B6 ; |367|
;** --------------------------------------------------------------------------*
L46:
CALL .S2 B6 ; |367|
MV .D1 A23,A3 ; |367|
SHR .S1 A3,31,A3 ; |367|
|| MV .D2X A23,B10 ; |367|
MV .D2X A23,B4 ; |367|
MV .D2X A3,B5 ; |367|
ADDKPC .S2 RL4,B3,0 ; |367|
|| MV .D2X A3,B11 ; |367|
|| MV .D1 A21,A5 ; |367|
|| MV .S1 A20,A4 ; |367|
RL4: ; CALL OCCURS ; |367|
MVKL .S2 __divul,B6 ; |367|
MVKH .S2 __divul,B6 ; |367|
CALL .S2 B6 ; |367|
MV .D2X A5,B12 ; |367|
ADDKPC .S2 RL3,B3,0 ; |367|
MV .D1 A11,A5 ; |367|
MV .D2 B11,B5 ; |367|
MV .L2 B10,B4 ; |367|
|| MV .L1 A4,A15 ; |367|
|| MV .S1 A10,A4 ; |367|
RL3: ; CALL OCCURS ; |367|
MVKL .S2 __divul,B6 ; |367|
MVKH .S2 __divul,B6 ; |367|
CALL .S2 B6 ; |367|
MV .D2X A5,B13 ; |367|
ADDKPC .S2 RL2,B3,0 ; |367|
MV .S1 A13,A5 ; |367|
MV .D2 B11,B5 ; |367|
MV .L2 B10,B4 ; |367|
|| MV .L1 A4,A10 ; |367|
|| MV .D1 A12,A4 ; |367|
RL2: ; CALL OCCURS ; |367|
MVK .S2 601,B4 ; |367|
MVK .S2 306,B6 ; |367|
MPYHLU .M1X A15,B4,A6 ; |367|
MPYHLU .M1X B4,A15,A8 ; |367|
MPYHU .M1X B4,A15,A7 ; |367|
MPYU .M2X A15,B4,B5 ; |367|
|| MV .D1X B12,A3 ; |367|
ADD .D1 A6,A8,A16 ; |367|
|| MPYU .M1X A3,B4,A3 ; |367|
MPYHLU .M1X A10,B6,A8 ; |367|
|| SHL .S1 A16,16,A17:A16 ; |367|
|| MPYU .M2 B13,B6,B7 ; |367|
|| MV .D2X A4,B4 ; |367|
MPYHLU .M2X B6,A10,B8 ; |367|
|| ADDU .L1X B5,A17:A16,A17:A16 ; |367|
MPYU .M2X A10,B6,B5 ; |367|
|| MPYHU .M1X B6,A10,A9 ; |367|
|| MVK .S1 117,A6 ; |367|
MPYU .M1X B4,A6,A8 ; |367|
|| ADD .D2X A8,B8,B6 ; |367|
ADD .D1X A9,B7,A4 ; |367|
|| MPYHLU .M2X B4,A6,B9 ; |367|
MPYHLU .M1X A6,B4,A9 ; |367|
MPYHU .M2X A6,B4,B4 ; |367|
|| MPYU .M1 A5,A6,A5 ; |367|
|| SHL .S2 B6,16,B7:B6 ; |367|
ADDU .L2 B5,B7:B6,B7:B6 ; |367|
|| ADD .D1 A7,A3,A3 ; |367|
|| ADD .S1X B9,A9,A6 ; |367|
ADD .D1 A3,A17,A3 ; |367|
|| SHL .S1 A6,16,A7:A6 ; |367|
|| ADD .D2X A4,B7,B7 ; |367|
ADDU .L2X A16,B7:B6,B5:B4 ; |367|
|| ADD .D1X B4,A5,A4 ; |367|
|| ADDU .L1 A8,A7:A6,A7:A6 ; |367|
ADD .D2X A3,B5,B5 ; |367|
|| ADD .D1 A4,A7,A7 ; |367|
ADDU .L1X B4,A7:A6,A5:A4 ; |367|
ADD .D1X B5,A5,A5 ; |367|
SHRU .S1 A5:A4,10,A5:A4 ; |367|
MVK .S1 0x1,A4 ; |369|
|| STW .D1T1 A4,*A14 ; |367|
LDW .D2T2 *+SP(28),B3 ; |370|
MV .D1X SP,A31 ; |370|
LDDW .D1T1 *+A31(16),A13:A12 ; |370|
LDDW .D1T1 *+A31(8),A11:A10 ; |370|
LDDW .D2T2 *+SP(32),B11:B10 ; |370|
;** --------------------------------------------------------------------------*
L47:
RET .S2 B3 ; |370|
|| LDW .D1T1 *+A31(24),A14 ; |370|
|| LDDW .D2T2 *+SP(40),B13:B12 ; |370|
LDW .D2T1 *++SP(48),A15 ; |370|
NOP 4
; BRANCH OCCURS ; |370|
.sect ".text"
.global _UAGE_GetMeanBrightness__FPUciN5215UAGE_COLOR_MODERi
;******************************************************************************
;* FUNCTION NAME: _UAGE_GetMeanBrightness(unsigned char *, int, int, int, int, int, int, UAGE_COLOR_MODE, int &)*
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14, *
;* A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12, *
;* B13,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,A
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -