📄 filt_gen.asm
字号:
MV .D2X A4,B4
CALL .S2X A3
MV .D2X A5,B5
MV .S1 A14,A5
MV .D1 A15,A4
ADDKPC .S2 RL45,B3,1
RL45: ; CALL OCCURS
MVKL .S2 __addd,B6
MVKH .S2 __addd,B6
CALL .S2 B6
MVKL .S2 0x3ffc71de,B5
MVKL .S2 0x69ad42c4,B4
MVKH .S2 0x3ffc71de,B5
MVKH .S2 0x69ad42c4,B4
ADDKPC .S2 RL46,B3,0
RL46: ; CALL OCCURS
MV .D2X A4,B10
MV .D2X A5,B11
MVKL .S1 __cmpd,A3
MVKH .S1 __cmpd,A3
;** --------------------------------------------------------------------------*
L4:
ZERO .D2 B5
CALL .S2X A3
MVKH .S2 0x3ff00000,B5
ADDKPC .S2 RL47,B3,0
MV .D1 A11,A4
MV .S1 A10,A5
ZERO .D2 B4
RL47: ; CALL OCCURS
LDW .D2T1 *+SP(40),A0
NOP 4
CMPLT .L1 A4,0,A0
|| [!A0] ZERO .L2 B11:B10
[!A0] BNOP .S1 L5,2
[!A0] ADD .D1 1,A12,A12 ; |52|
|| [ A0] MVKL .S1 __mpyd,A3 ; |46|
[!A0] CMPLT .L1 A12,3,A0 ; |52|
|| [ A0] MVKH .S1 __mpyd,A3 ; |46|
NOP 1
; BRANCH OCCURS
;** --------------------------------------------------------------------------*
CALL .S2X A3 ; |46|
MVKL .S2 0x3ff2aacd,B5 ; |46|
MVKL .S2 0x9e83e426,B4 ; |46|
MVKH .S2 0x3ff2aacd,B5 ; |46|
MVKH .S2 0x9e83e426,B4 ; |46|
ADDKPC .S2 RL70,B3,0 ; |46|
|| MV .D1 A11,A4 ; |46|
|| MV .S1 A10,A5 ; |46|
RL70: ; CALL OCCURS ; |46|
MVKL .S1 __mpyd,A3 ; |46|
MVKH .S1 __mpyd,A3 ; |46|
MV .D2X A10,B5 ; |46|
CALL .S2X A3 ; |46|
ADDKPC .S2 RL71,B3,3 ; |46|
MV .D2X A11,B4 ; |46|
RL71: ; CALL OCCURS ; |46|
MVKL .S2 __mpyd,B6 ; |46|
MVKH .S2 __mpyd,B6 ; |46|
CALL .S2 B6 ; |46|
MV .D2X A10,B5 ; |46|
MV .D2X A11,B4 ; |46|
ADDKPC .S2 RL72,B3,2 ; |46|
RL72: ; CALL OCCURS ; |46|
MVKL .S1 __addd,A3 ; |46|
MVKH .S1 __addd,A3 ; |46|
MV .D1 A5,A14 ; |46|
CALL .S2X A3 ; |46|
MV .D2X A10,B5 ; |46|
MV .L1 A4,A15 ; |46|
MV .D2X A11,B4 ; |46|
MV .S1 A10,A5 ; |46|
ADDKPC .S2 RL73,B3,0 ; |46|
|| MV .D1 A11,A4 ; |46|
RL73: ; CALL OCCURS ; |46|
MVKL .S1 __mpyd,A3 ; |46|
MVKH .S1 __mpyd,A3 ; |46|
MV .D2X A10,B5 ; |46|
CALL .S2X A3 ; |46|
MV .D2X A11,B4 ; |46|
ADDKPC .S2 RL74,B3,3 ; |46|
RL74: ; CALL OCCURS ; |46|
MVKL .S2 __subd,B6 ; |46|
MVKH .S2 __subd,B6 ; |46|
CALL .S2 B6 ; |46|
MV .D2X A4,B4 ; |46|
MV .D2X A5,B5 ; |46|
MV .S1 A14,A5 ; |46|
MV .D1 A15,A4 ; |46|
ADDKPC .S2 RL75,B3,0 ; |46|
RL75: ; CALL OCCURS ; |46|
MVKL .S1 __addd,A3 ; |46|
MVKH .S1 __addd,A3 ; |46|
ZERO .L2 B5:B4 ; |46|
CALL .S2X A3 ; |46|
ADDKPC .S2 RL76,B3,4 ; |46|
RL76: ; CALL OCCURS ; |46|
MVKL .S1 __addd,A3 ; |46|
MVKH .S1 __addd,A3 ; |46|
MVKL .S2 0x3fec71de,B5 ; |46|
CALL .S2X A3 ; |46|
MVKL .S2 0x69ad42c4,B4 ; |46|
MVKH .S2 0x3fec71de,B5 ; |46|
MVKH .S2 0x69ad42c4,B4 ; |46|
ADDKPC .S2 RL77,B3,1 ; |46|
RL77: ; CALL OCCURS ; |46|
MV .D2X A4,B10 ; |46|
MV .D2X A5,B11 ; |46|
ADD .D1 1,A12,A12 ; |52|
CMPLT .L1 A12,3,A0 ; |52|
;** --------------------------------------------------------------------------*
L5:
[ A0] B .S1 L2 ; |52|
STDW .D2T2 B11:B10,*B12++ ; |51|
|| [ A0] EXT .S1 A12,16,16,A3 ; |32|
[!A0] LDW .D2T1 *+SP(8),A4
NOP 3
; BRANCH OCCURS ; |52|
;** --------------------------------------------------------------------------*
NOP 1
LDH .D1T1 *A4++,A3 ; |53|
STW .D2T1 A4,*+SP(8) ; |53|
LDW .D2T2 *+SP(12),B4
NOP 1
LDW .D2T1 *+SP(4),A5
LDW .D2T1 *+SP(20),A6
LDW .D2T1 *+SP(24),A4
SUB .D1X B4,1,A0 ; |54|
[ A0] BNOP .S1 L1,1 ; |54|
SUB .D2 B4,1,B4 ; |54|
ADD .D1 A5,A6,A4 ; |54|
|| STW .D2T2 B4,*+SP(12) ; |53|
|| ADD .S1 A3,A4,A3 ; |53|
STW .D2T1 A4,*+SP(20) ; |53|
STW .D2T1 A3,*+SP(24) ; |53|
; BRANCH OCCURS ; |54|
;** --------------------------------------------------------------------------*
LDW .D2T2 *+SP(68),B3 ; |55|
;** --------------------------------------------------------------------------*
L6:
MV .D1X SP,A31 ; |55|
LDDW .D1T1 *+A31(56),A13:A12 ; |55|
LDDW .D1T1 *+A31(48),A11:A10 ; |55|
LDDW .D2T2 *+SP(72),B11:B10 ; |55|
RET .S2 B3 ; |55|
|| LDW .D1T1 *+A31(64),A14 ; |55|
|| LDDW .D2T2 *+SP(80),B13:B12 ; |55|
LDW .D2T1 *++SP(88),A15 ; |55|
NOP 4
; BRANCH OCCURS ; |55|
.sect ".text"
.global _filter_normalize
;******************************************************************************
;* FUNCTION NAME: _filter_normalize *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,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,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,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 *
;* Local Frame Size : 0 Args + 0 Auto + 36 Save = 36 byte *
;******************************************************************************
_filter_normalize:
;** --------------------------------------------------------------------------*
CMPGT .L1 A4,0,A0 ; |61|
[!A0] B .S1 L10 ; |61|
STW .D2T1 A13,*SP--(40) ; |58|
|| MV .D1X SP,A31 ; |58|
STW .D1T1 A14,*-A31(20)
|| STDW .D2T2 B13:B12,*+SP(32)
MV .S1X B3,A14
|| STDW .D2T2 B11:B10,*+SP(24)
|| STW .D1T1 A12,*-A31(24)
MV .D1 A4,A11 ; |58|
|| STDW .D2T1 A11:A10,*+SP(8)
|| MV .S1X B4,A12 ; |58|
|| ZERO .S2 B13
[!A0] LDDW .D2T1 *+SP(8),A11:A10 ; |68|
|| [!A0] MV .D1X SP,A31 ; |68|
; BRANCH OCCURS ; |61|
;** --------------------------------------------------------------------------*
;** BEGIN LOOP L7
;** --------------------------------------------------------------------------*
L7:
ADD .D2X B13,A12,B12
|| MVK .D1 0x4,A10 ; |64|
|| ZERO .L2 B11:B10 ; |63|
MVKL .S1 __addd,A3 ; |64|
MVKH .S1 __addd,A3 ; |64|
NOP 1
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L8:
CALL .S2X A3 ; |64|
LDDW .D2T2 *B12++,B5:B4 ; |64|
MV .D1X B10,A4 ; |64|
ADDKPC .S2 RL78,B3,1 ; |64|
MV .D1X B11,A5 ; |64|
RL78: ; CALL OCCURS ; |64|
SUB .D1 A10,1,A0 ; |64|
[ A0] B .S1 L8 ; |64|
MV .D2X A5,B11 ; |64|
[ A0] MVKL .S1 __addd,A3 ; |64|
|| MV .D2X A4,B10 ; |64|
|| SUB .D1 A10,1,A10 ; |64|
[ A0] MVKH .S1 __addd,A3 ; |64|
[!A0] MVKL .S1 __cmpd,A3 ; |65|
[!A0] MVKH .S1 __cmpd,A3 ; |65|
; BRANCH OCCURS ; |64|
;** --------------------------------------------------------------------------*
ZERO .L2 B5:B4 ; |65|
CALL .S2X A3 ; |65|
ADDKPC .S2 RL79,B3,4 ; |65|
RL79: ; CALL OCCURS ; |65|
CMPLT .L1 A4,0,A0 ; |65|
[!A0] BNOP .S1 L9,2 ; |65|
[ A0] MVKL .S1 __negd,A3 ; |65|
|| [!A0] ADD .D1X B13,A12,A10
|| [!A0] MVK .L1 0x4,A13 ; |66|
|| [!A0] MVKL .S2 __divd,B6 ; |66|
[ A0] MVKH .S1 __negd,A3 ; |65|
|| [!A0] MVKH .S2 __divd,B6 ; |66|
NOP 1
; BRANCH OCCURS ; |65|
;** --------------------------------------------------------------------------*
CALL .S2X A3 ; |65|
MV .D1X B10,A4 ; |65|
ADDKPC .S2 RL80,B3,2 ; |65|
MV .D1X B11,A5 ; |65|
RL80: ; CALL OCCURS ; |65|
MV .D2X A4,B10 ; |65|
MV .D2X A5,B11 ; |65|
MVK .S1 0x4,A13 ; |66|
|| ADD .D1X B13,A12,A10
MVKL .S2 __divd,B6 ; |66|
MVKH .S2 __divd,B6 ; |66|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L9:
CALL .S2 B6 ; |66|
LDDW .D1T1 *A10,A5:A4 ; |66|
ADDKPC .S2 RL81,B3,1 ; |66|
MV .D2 B11,B5 ; |66|
MV .L2 B10,B4 ; |66|
RL81: ; CALL OCCURS ; |66|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -