📄 scale_2d_yc_doub_buf.asm
字号:
;******************************************************************************
;* TMS320C6x C/C++ Codegen PC Version 4.36 *
;* Date/Time created: Tue Jun 22 14:07:22 2004 *
;******************************************************************************
;******************************************************************************
;* GLOBAL FILE PARAMETERS *
;* *
;* Architecture : TMS320C64xx *
;* Optimization : Enabled at level 2 *
;* Optimizing for : Speed *
;* Based on options: -o2, no -ms *
;* Endian : Little *
;* Interrupt Thrshld : 100 *
;* Memory Model : Large *
;* Calls to RTS : Far *
;* Pipelining : Enabled *
;* Speculative Load : Enabled *
;* Memory Aliases : Presume not aliases (optimistic) *
;* Debug Info : No Debug Info *
;* *
;******************************************************************************
.asg A15, FP
.asg B14, DP
.asg B15, SP
.global $bss
.sect ".const"
.align 8
_$T0$1:
.field 9539,16 ; _$T0$1[0] @ 0
.field 13075,16 ; _$T0$1[1] @ 16
.field 62326,16 ; _$T0$1[2] @ 32
.field 58876,16 ; _$T0$1[3] @ 48
.field 16525,16 ; _$T0$1[4] @ 64
.sect ".text"
; c:\ti_6000\c6000\cgtools\bin\opt6x.exe -t -DI100 -v6400 -q -O2 C:\DOCUME~1\A03238~1.USA\LOCALS~1\Temp\TI1784_2 C:\DOCUME~1\A03238~1.USA\LOCALS~1\Temp\TI1784_5 -w .
.sect ".opt_gp"
.global _scale_2d_ycrcb
;******************************************************************************
;* FUNCTION NAME: _scale_2d_ycrcb *
;* *
;* 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,FP,*
;* 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,FP,*
;* 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 + 360 Auto + 44 Save = 404 byte *
;******************************************************************************
_scale_2d_ycrcb:
;** --------------------------------------------------------------------------*
MV .D1X SP,FP ; |69|
|| STW .D2T1 FP,*SP--(8) ; |69|
ADDK .S2 -400,SP
LDW .D1T2 *+FP(28),B5 ; |69|
LDW .D1T1 *+FP(36),A5 ; |69|
LDW .D1T2 *+FP(48),B16 ; |69|
MV .D2X A6,B9 ; |69|
MV .D1X B4,A3 ; |69|
STW .D2T2 B5,*+SP(20) ; |69|
LDW .D1T2 *+FP(20),B5 ; |69|
STW .D2T2 B12,*+SP(400)
STW .D2T2 B13,*+SP(404)
STW .D1T1 A14,*-FP(24)
STDW .D1T1 A13:A12,*-FP(32)
STW .D2T2 B5,*+SP(24) ; |69|
STW .D2T1 A5,*+SP(28) ; |69|
LDW .D1T1 *+FP(40),A5 ; |69|
STDW .D1T1 A11:A10,*-FP(40)
MVKL .S2 _$T0$1,B7 ; |151|
LDW .D1T1 *+FP(24),A7 ; |69|
MVKH .S2 _$T0$1,B7 ; |151|
STW .D2T1 A5,*+SP(32) ; |69|
LDW .D1T1 *+FP(44),A5 ; |69|
MVKL .S2 __divi,B19 ; |181|
MVKH .S2 __divi,B19 ; |181|
ADD .D2 B4,B4,B21 ; |181|
MV .L2X A6,B4 ; |69|
STW .D2T1 A5,*+SP(36) ; |69|
LDW .D2T2 *+SP(20),B5 ; |69|
STW .D2T2 B16,*+SP(40) ; |69|
|| LDW .D1T1 *+FP(32),A5 ; |69|
LDW .D2T2 *+SP(20),B16 ; |69|
NOP 1
ADD .S1 A6,A6,A17 ; |191|
ZERO .D1 A6 ; |184|
MPYLH .M2 B9,B5,B5 ; |179|
|| STW .D2T1 A5,*+SP(44) ; |191|
LDW .D2T2 *+SP(24),B9 ; |69|
|| MPYLH .M2 B16,B9,B17 ; |179|
|| MV .D1X B9,A5 ; |69|
NOP 1
MVKL .S2 __divi,B16 ; |191|
MVKH .S2 __divi,B16 ; |191|
ADD .D2 B17,B5,B18 ; |179|
LDW .D1T2 *+FP(12),B9 ; |69|
|| MPYLH .M2X B9,A3,B18 ; |179|
|| SHL .S2 B18,16,B20 ; |179|
|| MPYLH .M1X A3,B9,A9 ; |179|
NOP 2
LDW .D1T2 *+FP(16),B17 ; |69|
MVKL .S2 __divi,B5 ; |190|
STW .D2T2 B9,*+SP(48) ; |179|
LDW .D1T2 *+FP(4),B9 ; |69|
STW .D2T2 B10,*+SP(392)
STW .D2T2 B11,*+SP(396)
STW .D2T2 B3,*+SP(388)
STW .D2T1 A4,*+SP(52) ; |69|
STW .D2T2 B9,*+SP(56) ; |182|
STW .D2T2 B6,*+SP(60) ; |69|
STW .D2T1 A8,*+SP(64) ; |69|
STW .D2T2 B8,*+SP(68) ; |69|
STW .D2T1 A10,*+SP(72) ; |69|
|| LDW .D1T2 *+FP(8),B11 ; |69|
LDW .D2T1 *+SP(24),A4 ; |69|
STW .D2T2 B12,*+SP(76) ; |69|
LDH .D2T2 *+B7(8),B22 ; |151|
|| ADD .D1X B18,A9,A9 ; |179|
LDW .D2T1 *+SP(20),A9 ; |191|
|| SHL .S1 A9,16,A8 ; |179|
LDDW .D2T2 *B7,B7:B6 ; |151|
MVKH .S2 __divi,B5 ; |190|
MPYU .M1 A4,A3,A4 ; |179|
LDW .D2T2 *+SP(24),B9 ; |183|
MPYU .M1 A9,A5,A8 ; |179|
|| ADD .D1 A4,A8,A4 ; |179|
ADD .L2 8,SP,B8 ; |151|
ADD .D1X A8,B20,A16 ; |179|
CMPLT .L1 A4,A16,A0 ; |179|
[!A0] BNOP .S1 L1,1 ; |179|
STH .D2T2 B22,*+B8(8) ; |151|
STW .D2T1 A6,*+SP(80) ; |151|
MV .D1 A9,A11 ; |69|
|| MVKL .S2 __divi,B18 ; |182|
ZERO .L1 A9 ; |188|
|| SUB .S1 A4,A16,A6 ; |181|
|| STDW .D2T2 B7:B6,*B8 ; |151|
|| MVKH .S2 __divi,B18 ; |182|
|| SUB .D1 A16,A4,A8 ; |191|
; BRANCH OCCURS ; |179|
;** --------------------------------------------------------------------------*
CALL .S2 B5 ; |190|
ADDKPC .S2 RL0,B3,4 ; |190|
RL0: ; CALL OCCURS ; |190|
CALL .S2 B16 ; |191|
ADDKPC .S2 RL1,B3,1 ; |191|
MV .S1 A4,A11 ; |190|
MV .D1 A8,A4 ; |191|
MV .D2X A17,B4 ; |191|
RL1: ; CALL OCCURS ; |191|
B .S1 L2 ; |191|
ADD .D1 A4,A4,A4 ; |191|
MPYLH .M1 A7,A12,A6 ; |195|
|| STW .D2T1 A4,*+SP(80) ; |191|
MPYLH .M1 A12,A7,A4 ; |195|
MPYLH .M2 B10,B17,B4 ; |195|
MPYLH .M2 B17,B10,B6 ; |195|
|| ADD .D1 A6,A4,A4 ; |195|
; BRANCH OCCURS ; |191|
;** --------------------------------------------------------------------------*
L1:
CALL .S2 B19 ; |181|
ADDKPC .S2 RL2,B3,2 ; |181|
MV .D1 A6,A4 ; |181|
MV .D2 B21,B4 ; |181|
RL2: ; CALL OCCURS ; |181|
CALL .S2 B18 ; |182|
MV .S1 A4,A9 ; |181|
MV .D2X A3,B4 ; |182|
ADDKPC .S2 RL3,B3,0 ; |182|
MV .D1 A16,A4 ; |182|
NOP 1
RL3: ; CALL OCCURS ; |182|
MV .D2X A4,B9 ; |182|
MPYLH .M1 A7,A12,A6 ; |195|
MPYLH .M1 A12,A7,A4 ; |195|
MPYLH .M2 B10,B17,B4 ; |195|
ADD .D1 A6,A4,A4 ; |195|
|| MPYLH .M2 B17,B10,B6 ; |195|
;** --------------------------------------------------------------------------*
L2:
MPYU .M1 A7,A12,A4 ; |195|
|| SHL .S1 A4,16,A6 ; |195|
MPYU .M2 B17,B10,B4 ; |195|
|| ADD .D2 B6,B4,B7 ; |195|
ADD .D1 A4,A6,A7 ; |195|
|| SHL .S2 B7,16,B7 ; |195|
|| STW .D2T1 A7,*+SP(84) ; |198|
ADD .D2 B4,B7,B16 ; |195|
CMPLT .L2X B16,A7,B0 ; |195|
|| MVKL .S2 __divi,B8 ; |197|
[!B0] B .S1 L3 ; |195|
|| MVKL .S2 __divi,B5 ; |203|
MVKH .S2 __divi,B8 ; |197|
MVKH .S2 __divi,B5 ; |203|
SUB .S1X A7,B16,A8 ; |205|
|| MVKL .S2 __divi,B6 ; |205|
MV .D1X B16,A4 ; |203|
|| MVKH .S2 __divi,B6 ; |205|
ADD .D2 B10,B10,B16 ; |197|
|| ADD .D1 A12,A12,A7 ; |205|
|| SUB .S1X B16,A7,A6 ; |197|
|| MV .S2X A12,B4 ; |203|
|| ZERO .L2 B7 ; |202|
; BRANCH OCCURS ; |195|
;** --------------------------------------------------------------------------*
CALL .S2 B5 ; |203|
ADDKPC .S2 RL4,B3,4 ; |203|
RL4: ; CALL OCCURS ; |203|
CALL .S2 B6 ; |205|
ADDKPC .S2 RL5,B3,1 ; |205|
MV .D2X A7,B4 ; |205|
ADD .S1 2,A4,A16 ; |203|
MV .D1 A8,A4 ; |205|
RL5: ; CALL OCCURS ; |205|
LDW .D2T1 *+SP(20),A6 ; |205|
LDW .D2T2 *+SP(20),B4 ; |205|
NOP 3
MPYLH .M1 A6,A4,A6 ; |205|
MPYLH .M2X A4,B4,B5 ; |205|
MPYU .M2X B4,A4,B4 ; |205|
ADD .D2X A6,B5,B5 ; |205|
SHL .S2 B5,16,B5 ; |205|
LDW .D2T2 *+SP(80),B5 ; |205|
|| ADD .S2 B4,B5,B4 ; |205|
AND .D1 -2,A16,A4 ; |203|
BNOP .S1 L4,2 ; |205|
ADDAH .D2 B5,B4,B4 ; |205|
STW .D2T1 A4,*+SP(84) ; |205|
STW .D2T2 B4,*+SP(80) ; |205|
; BRANCH OCCURS ; |205|
;** --------------------------------------------------------------------------*
L3:
CALL .S2 B8 ; |197|
ADDKPC .S2 RL6,B3,2 ; |197|
MV .D1 A6,A4 ; |197|
MV .D2 B16,B4 ; |197|
RL6: ; CALL OCCURS ; |197|
LDW .D2T1 *+SP(24),A6 ; |197|
LDW .D2T2 *+SP(24),B4 ; |197|
LDW .D2T2 *+SP(24),B5 ; |197|
NOP 2
MPYLH .M1 A6,A4,A6 ; |197|
MPYLH .M2X A4,B4,B4 ; |197|
MPYU .M2X B5,A4,B5 ; |197|
ADD .D2X A6,B4,B4 ; |197|
SHL .S2 B4,16,B4 ; |197|
ADD .D2 B5,B4,B7 ; |197|
;** --------------------------------------------------------------------------*
L4:
LDW .D2T1 *+SP(24),A6 ; |214|
LDW .D2T1 *+SP(52),A4
ZERO .S2 B8 ; |217|
ADD .S2X B7,A9,B6 ; |212|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -