📄 my_convert.asm
字号:
;******************************************************************************
;* TMS320C6x C/C++ Codegen PC Version 4.32 *
;* Date/Time created: Sat Nov 15 08:30:44 2008 *
;******************************************************************************
;******************************************************************************
;* GLOBAL FILE PARAMETERS *
;* *
;* Architecture : TMS320C64xx *
;* Optimization : Enabled at level 3 *
;* Optimizing for : Speed *
;* Based on options: -o3, no -ms *
;* Endian : Little *
;* Interrupt Thrshld : Disabled *
;* Memory Model : Large *
;* Calls to RTS : Far *
;* Pipelining : Enabled *
;* Speculative Load : Enabled *
;* Memory Aliases : Presume not aliases (optimistic) *
;* Debug Info : COFF Debug *
;* *
;******************************************************************************
.asg A15, FP
.asg B14, DP
.asg B15, SP
.global $bss
.file "my_convert.c"
.global _int_mem_temp
_int_mem_temp: .usect ".user_data_int",720,128
.sym _int_mem_temp,_int_mem_temp, 60, 2, 5760,, 720
; c:\ti\c6000\cgtools\bin\opt6x.exe -t -DI0 -v6400 -q -O3 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI3100_2 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI3100_5 -w c:/ti/boards/tds642evm/examples/video/jpeg_loopback/obj/
.sect ".text"
.global _yuv422to420
.sym _yuv422to420,_yuv422to420, 32, 2, 0
.func 14
;******************************************************************************
;* FUNCTION NAME: _yuv422to420 *
;* *
;* 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,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 *
;* Local Frame Size : 0 Args + 0 Auto + 44 Save = 44 byte *
;******************************************************************************
;******************************************************************************
;* *
;* Using -g (debug) with optimization (-o3) may disable key optimizations! *
;* *
;******************************************************************************
_yuv422to420:
;** --------------------------------------------------------------------------*
.line 3
.sym _frameIn,4, 82, 17, 32
.sym _frm_out,20, 82, 17, 32
.sym _width,6, 4, 17, 32
.sym _height,22, 4, 17, 32
.sym _height,29, 4, 4, 32
.sym _frm_out,20, 82, 4, 32
.sym _frameIn,4, 82, 4, 32
.sym _pSrcY,10, 18, 4, 32
.sym _pSrcU,15, 18, 4, 32
.sym _pSrcV,14, 18, 4, 32
.sym _pDestY,26, 18, 4, 32
.sym _pDestU,27, 18, 4, 32
.sym _pDestV,28, 18, 4, 32
.sym _id,3, 14, 4, 32
.sym _id,3, 14, 4, 32
.sym _id,3, 14, 4, 32
STW .D2T1 A15,*SP--(48) ; |16|
|| MV .D1X SP,A31 ; |16|
STDW .D1T1 A11:A10,*-A31(40)
|| STDW .D2T2 B13:B12,*+SP(40)
STDW .D1T1 A13:A12,*-A31(32)
|| STDW .D2T2 B11:B10,*+SP(32)
STW .D1T1 A14,*-A31(24)
|| STW .D2T2 B3,*+SP(28)
MV .D2 B6,B13 ; |16|
.line 4
LDW .D1T1 *A4,A10 ; |17|
.line 5
LDW .D1T1 *+A4(4),A15 ; |18|
.line 6
LDW .D1T1 *+A4(8),A14 ; |19|
.line 8
LDW .D2T2 *B4,B10 ; |21|
.line 9
LDW .D2T2 *+B4(4),B11 ; |22|
.line 10
LDW .D2T2 *+B4(8),B12 ; |23|
.line 15
MV .D1X B13,A0
[!A0] BNOP .S1 L2,2 ; |28|
MVKL .S1 _int_mem_temp,A12
MVK .S1 0x2d0,A13
MV .D1X B13,A11
|| MVKH .S1 _int_mem_temp,A12
; BRANCH OCCURS ; |28|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L1:
.line 17
MVKL .S2 _DAT_copy,B5 ; |30|
MVKH .S2 _DAT_copy,B5 ; |30|
CALL .S2 B5 ; |30|
ADDKPC .S2 RL0,B3,1 ; |30|
EXTU .S1 A13,16,16,A6 ; |30|
MV .D2X A12,B4 ; |30|
MV .D1 A10,A4 ; |30|
RL0: ; CALL OCCURS ; |30|
.line 18
MVKL .S1 _DAT_copy,A3 ; |31|
MVKH .S1 _DAT_copy,A3 ; |31|
MV .D2 B10,B4 ; |31|
CALL .S2X A3 ; |31|
ADDKPC .S2 RL1,B3,2 ; |31|
EXTU .S1 A13,16,16,A6 ; |31|
MV .D1 A12,A4 ; |31|
RL1: ; CALL OCCURS ; |31|
.line 19
MVKL .S2 _DAT_wait,B4 ; |32|
MVKH .S2 _DAT_wait,B4 ; |32|
CALL .S2 B4 ; |32|
ADDKPC .S2 RL2,B3,4 ; |32|
RL2: ; CALL OCCURS ; |32|
.line 20
SUB .D1 A11,1,A0 ; |33|
[ A0] BNOP .S1 L1,4 ; |33|
ADDK .S2 720,B10 ; |33|
|| ADDK .S1 720,A10 ; |33|
|| SUB .D1 A11,1,A11 ; |33|
; BRANCH OCCURS ; |33|
;** --------------------------------------------------------------------------*
L2:
.line 22
MV .D1X B13,A3
SHR .S1 A3,1,A3 ; |35|
MV .D1 A3,A0 ; |35|
[!A0] BNOP .S1 L4,4 ; |35|
MV .D1 A3,A10 ; |35|
|| [ A0] MVK .S1 0x168,A11
; BRANCH OCCURS ; |35|
;** --------------------------------------------------------------------------*
.line 24
MVKL .S1 _int_mem_temp,A4
MVKH .S1 _int_mem_temp,A4
MV .D1 A4,A12
|| MV .S1 A10,A13
MVKL .S2 _DAT_copy,B5 ; |37|
MVKH .S2 _DAT_copy,B5 ; |37|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L3:
CALL .S2 B5 ; |37|
ADDKPC .S2 RL3,B3,1 ; |37|
MV .D1 A15,A4 ; |37|
MV .D2X A12,B4 ; |37|
EXTU .S1 A11,16,16,A6 ; |37|
RL3: ; CALL OCCURS ; |37|
.line 25
MVKL .S1 _DAT_copy,A3 ; |38|
MVKH .S1 _DAT_copy,A3 ; |38|
MV .D2 B11,B4 ; |38|
CALL .S2X A3 ; |38|
ADDKPC .S2 RL4,B3,2 ; |38|
MV .D1 A12,A4 ; |38|
EXTU .S1 A11,16,16,A6 ; |38|
RL4: ; CALL OCCURS ; |38|
.line 26
MVKL .S2 _DAT_wait,B4 ; |39|
MVKH .S2 _DAT_wait,B4 ; |39|
CALL .S2 B4 ; |39|
ADDKPC .S2 RL5,B3,4 ; |39|
RL5: ; CALL OCCURS ; |39|
.line 27
SUB .D1 A13,1,A0 ; |40|
[ A0] BNOP .S1 L3,2 ; |40|
ADDK .S2 360,B11 ; |40|
|| ADDK .S1 720,A15 ; |40|
|| SUB .D1 A13,1,A13 ; |40|
[ A0] MVKL .S2 _DAT_copy,B5 ; |37|
[ A0] MVKH .S2 _DAT_copy,B5 ; |37|
; BRANCH OCCURS ; |40|
;** --------------------------------------------------------------------------*
L4:
.line 29
MV .D1 A10,A0
[!A0] BNOP .S1 L6,4 ; |42|
[ A0] MVK .S1 0x168,A11
; BRANCH OCCURS ; |42|
;** --------------------------------------------------------------------------*
.line 31
MVKL .S1 _int_mem_temp,A3
MVKH .S1 _int_mem_temp,A3
MV .D1 A3,A12
MVKL .S2 _DAT_copy,B5 ; |44|
MVKH .S2 _DAT_copy,B5 ; |44|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L5:
CALL .S2 B5 ; |44|
ADDKPC .S2 RL6,B3,1 ; |44|
MV .D1 A14,A4 ; |44|
MV .D2X A12,B4 ; |44|
EXTU .S1 A11,16,16,A6 ; |44|
RL6: ; CALL OCCURS ; |44|
.line 32
MVKL .S1 _DAT_copy,A3 ; |45|
MVKH .S1 _DAT_copy,A3 ; |45|
MV .D2 B12,B4 ; |45|
CALL .S2X A3 ; |45|
ADDKPC .S2 RL7,B3,2 ; |45|
MV .D1 A12,A4 ; |45|
EXTU .S1 A11,16,16,A6 ; |45|
RL7: ; CALL OCCURS ; |45|
.line 33
MVKL .S2 _DAT_wait,B4 ; |46|
MVKH .S2 _DAT_wait,B4 ; |46|
CALL .S2 B4 ; |46|
ADDKPC .S2 RL8,B3,4 ; |46|
RL8: ; CALL OCCURS ; |46|
.line 34
SUB .D1 A10,1,A0 ; |47|
[ A0] BNOP .S1 L5,2 ; |47|
ADDK .S2 360,B12 ; |47|
|| ADDK .S1 720,A14 ; |47|
|| SUB .D1 A10,1,A10 ; |47|
[ A0] MVKL .S2 _DAT_copy,B5 ; |44|
[ A0] MVKH .S2 _DAT_copy,B5 ; |44|
; BRANCH OCCURS ; |47|
;** --------------------------------------------------------------------------*
L6:
.line 37
LDW .D2T2 *+SP(28),B3 ; |50|
MV .D1X SP,A31 ; |50|
LDDW .D1T1 *+A31(16),A13:A12 ; |50|
LDDW .D1T1 *+A31(8),A11:A10 ; |50|
LDDW .D2T2 *+SP(32),B11:B10 ; |50|
RET .S2 B3 ; |50|
|| LDW .D1T1 *+A31(24),A14 ; |50|
|| LDDW .D2T2 *+SP(40),B13:B12 ; |50|
LDW .D2T1 *++SP(48),A15 ; |50|
NOP 4
; BRANCH OCCURS ; |50|
.endfunc 50,03c08fc00h,48
.sect ".text"
.global _yuv420to422
.sym _yuv420to422,_yuv420to422, 32, 2, 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -