📄 algorithm.asm
字号:
;******************************************************************************
;* TMS320C6x C/C++ Codegen PC Version 4.32 *
;* Date/Time created: Thu Aug 11 19:53:48 2005 *
;******************************************************************************
;******************************************************************************
;* GLOBAL FILE PARAMETERS *
;* *
;* Architecture : TMS320C64xx *
;* Optimization : Disabled *
;* Optimizing for : Compile time, Ease of Development *
;* Based on options: no -o, no -ms *
;* Endian : Little *
;* Interrupt Thrshld : Disabled *
;* Memory Model : Small *
;* Calls to RTS : Near *
;* Pipelining : Disabled *
;* Memory Aliases : Presume are aliases (pessimistic) *
;* Debug Info : COFF Debug *
;* *
;******************************************************************************
.asg A15, FP
.asg B14, DP
.asg B15, SP
.global $bss
.file "algorithm.c"
; e:\ti\c6000\cgtools\bin\acp6x.exe -@D:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI1548_4
.sect ".text"
.global _getBinaryImage
.sym _getBinaryImage,_getBinaryImage, 32, 2, 0
.func 7
;******************************************************************************
;* FUNCTION NAME: _getBinaryImage *
;* *
;* Regs Modified : A3,B0,B4,B5,B6,B7,B8,B9,SP *
;* Regs Used : A3,A4,A6,A8,B0,B3,B4,B5,B6,B7,B8,B9,SP *
;* Local Frame Size : 0 Args + 36 Auto + 0 Save = 36 byte *
;******************************************************************************
_getBinaryImage:
;** --------------------------------------------------------------------------*
.line 2
.sym _imagey,4, 28, 17, 32
.sym _imagecb,20, 28, 17, 32
.sym _imagecr,6, 28, 17, 32
.sym _BinaryImage,22, 28, 17, 32
.sym _size,8, 24, 17, 32, __Size
.sym _imagey,4, 28, 1, 32
.sym _imagecb,8, 28, 1, 32
.sym _imagecr,12, 28, 1, 32
.sym _BinaryImage,16, 28, 1, 32
.sym _size,20, 24, 1, 32, __Size
.sym _size,24, 8, 1, 64, __Size
.sym _i,32, 4, 1, 32
.sym _j,36, 4, 1, 32
ADDK .S2 -40,SP ; |8|
STW .D2T1 A8,*+SP(20) ; |8|
|| MV .D1X B6,A3 ; |8|
STW .D2T1 A3,*+SP(16) ; |8|
STW .D2T1 A6,*+SP(12) ; |8|
STW .D2T2 B4,*+SP(8) ; |8|
STW .D2T1 A4,*+SP(4) ; |8|
LDW .D2T2 *+SP(20),B4 ; |8|
NOP 3
ADD .D2 SP,24,B6 ; |8|
LDNDW .D2T2 *B4,B5:B4 ; |8|
NOP 4
STNDW .D2T2 B5:B4,*B6 ; |8|
NOP 2
.line 4
ZERO .D2 B4 ; |10|
STW .D2T2 B4,*+SP(32) ; |10|
LDW .D2T2 *+SP(32),B5 ; |10|
LDW .D2T2 *+SP(28),B4 ; |10|
NOP 4
CMPLT .L2 B5,B4,B0 ; |10|
[!B0] BNOP .S1 L6,5 ; |10|
; BRANCH OCCURS ; |10|
;** --------------------------------------------------------------------------*
;** BEGIN LOOP L1
;** --------------------------------------------------------------------------*
L1:
.line 5
ZERO .D2 B4 ; |11|
STW .D2T2 B4,*+SP(36) ; |11|
LDW .D2T2 *+SP(24),B4 ; |11|
LDW .D2T2 *+SP(36),B5 ; |11|
NOP 3
SHR .S2 B4,1,B4 ; |11|
CMPLT .L2 B5,B4,B0 ; |11|
[!B0] BNOP .S1 L5,5 ; |11|
; BRANCH OCCURS ; |11|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: Software pipelining disabled
;*----------------------------------------------------------------------------*
L2:
.line 7
LDW .D2T2 *+SP(24),B5 ; |13|
LDW .D2T2 *+SP(32),B4 ; |13|
NOP 2
LDW .D2T2 *+SP(36),B9 ; |13|
SHR .S2 B5,1,B5 ; |13|
MPYLH .M2 B5,B4,B7 ; |13|
MPYLH .M2 B4,B5,B6 ; |13|
LDW .D2T2 *+SP(8),B8 ; |13|
ADD .D2 B7,B6,B5 ; |13|
|| MPYU .M2 B5,B4,B4 ; |13|
SHL .S2 B5,16,B5 ; |13|
ADD .D2 B4,B5,B4 ; |13|
ADD .D2 B9,B4,B4 ; |13|
LDBU .D2T2 *+B8[B4],B5 ; |13|
NOP 3
MVK .S2 150,B4 ; |13|
CMPLT .L2 B5,B4,B0 ; |13|
[!B0] BNOP .S1 L3,5 ; |13|
; BRANCH OCCURS ; |13|
;** --------------------------------------------------------------------------*
LDW .D2T2 *+SP(24),B5 ; |13|
LDW .D2T2 *+SP(32),B4 ; |13|
NOP 2
LDW .D2T2 *+SP(36),B8 ; |13|
SHR .S2 B5,1,B5 ; |13|
MPYLH .M2 B5,B4,B6 ; |13|
MPYLH .M2 B4,B5,B9 ; |13|
LDW .D2T2 *+SP(8),B7 ; |13|
ADD .D2 B6,B9,B4 ; |13|
|| MPYU .M2 B5,B4,B5 ; |13|
SHL .S2 B4,16,B4 ; |13|
ADD .D2 B5,B4,B4 ; |13|
ADD .D2 B8,B4,B4 ; |13|
LDBU .D2T2 *+B7[B4],B5 ; |13|
NOP 3
MVK .S2 140,B4 ; |13|
CMPGT .L2 B5,B4,B0 ; |13|
;** --------------------------------------------------------------------------*
L3:
[!B0] BNOP .S1 L4,5 ; |13|
; BRANCH OCCURS ; |13|
;** --------------------------------------------------------------------------*
.line 10
LDW .D2T2 *+SP(32),B5 ; |16|
LDW .D2T2 *+SP(24),B4 ; |16|
NOP 3
LDW .D2T2 *+SP(36),B9 ; |16|
ADD .D2 B5,B5,B5 ; |16|
|| SHR .S2 B4,1,B4 ; |16|
MPYLH .M2 B4,B5,B6 ; |16|
MPYLH .M2 B5,B4,B8 ; |16|
LDW .D2T2 *+SP(16),B7 ; |16|
ADD .D2 B6,B8,B5 ; |16|
|| MPYU .M2 B4,B5,B4 ; |16|
SHL .S2 B5,16,B5 ; |16|
ADD .D2 B4,B5,B4 ; |16|
ADDAH .D2 B4,B9,B4 ; |16|
|| MVK .S2 1,B5 ; |16|
STB .D2T2 B5,*+B7[B4] ; |16|
NOP 2
.line 11
LDW .D2T2 *+SP(24),B4 ; |17|
LDW .D2T2 *+SP(32),B5 ; |17|
NOP 3
LDW .D2T2 *+SP(36),B6 ; |17|
SHR .S2 B4,1,B4 ; |17|
|| ADD .D2 B5,B5,B5 ; |17|
MPYLH .M2 B5,B4,B8 ; |17|
MPYLH .M2 B4,B5,B7 ; |17|
MPYU .M2 B4,B5,B5 ; |17|
ADD .S2 B7,B8,B7 ; |17|
|| LDW .D2T2 *+SP(16),B4 ; |17|
SHL .S2 B7,16,B7 ; |17|
ADD .D2 B5,B7,B5 ; |17|
ADDAH .D2 B5,B6,B5 ; |17|
ADD .S2 1,B5,B5 ; |17|
|| MVK .D2 1,B6 ; |17|
STB .D2T2 B6,*+B4[B5] ; |17|
;** --------------------------------------------------------------------------*
L4:
.line 18
LDW .D2T2 *+SP(36),B4 ; |24|
NOP 4
ADD .D2 1,B4,B4 ; |24|
STW .D2T2 B4,*+SP(36) ; |24|
LDW .D2T2 *+SP(24),B4 ; |24|
LDW .D2T2 *+SP(36),B5 ; |24|
NOP 3
SHR .S2 B4,1,B4 ; |24|
CMPLT .L2 B5,B4,B0 ; |24|
[ B0] BNOP .S1 L2,5 ; |24|
; BRANCH OCCURS ; |24|
;** --------------------------------------------------------------------------*
L5:
LDW .D2T2 *+SP(32),B4 ; |24|
NOP 4
ADD .D2 1,B4,B4 ; |24|
STW .D2T2 B4,*+SP(32) ; |24|
LDW .D2T2 *+SP(28),B5 ; |24|
NOP 4
CMPLT .L2 B4,B5,B0 ; |24|
[ B0] BNOP .S1 L1,5 ; |24|
; BRANCH OCCURS ; |24|
;** --------------------------------------------------------------------------*
L6:
.line 20
RETNOP .S2 B3,4 ; |26|
ADDK .S2 40,SP ; |26|
; BRANCH OCCURS ; |26|
.endfunc 26,000000000h,40
.sect ".text"
.global _findConnectComp
.sym _findConnectComp,_findConnectComp, 36, 2, 0
.func 31
;******************************************************************************
;* FUNCTION NAME: _findConnectComp *
;* *
;* Regs Modified : A0,A3,A4,B0,B4,B5,B6,B7,B8,B9,SP,B16 *
;* Regs Used : A0,A3,A4,A6,B0,B3,B4,B5,B6,B7,B8,B9,SP,B16 *
;* Local Frame Size : 0 Args + 2092 Auto + 0 Save = 2092 byte *
;******************************************************************************
_findConnectComp:
;** --------------------------------------------------------------------------*
.line 2
.sym _img,4, 28, 17, 32
.sym _Dst,20, 28, 17, 32
.sym _size,6, 24, 17, 32, __Size
.sym _counter,22, 20, 17, 32
.sym _img,4, 28, 1, 32
.sym _Dst,8, 28, 1, 32
.sym _size,12, 24, 1, 32, __Size
.sym _size,16, 8, 1, 64, __Size
.sym _counter,24, 20, 1, 32
.sym _list,32, 52, 1, 16000,, 500
.sym _label,2032, 4, 1, 32
.sym _width,2036, 4, 1, 32
.sym _height,2040, 4, 1, 32
.sym _kx,2044, 4, 1, 32
.sym _ky,2048, 4, 1, 32
.sym _minlabel,2052, 4, 1, 32
.sym _lab,2056, 52, 1, 160,, 5
.sym _i,2076, 4, 1, 32
.sym _j,2080, 4, 1, 32
.sym _ind,2084, 4, 1, 32
.sym _curlab,2088, 4, 1, 32
.sym _max,2092, 4, 1, 32
ADDK .S2 -2096,SP ; |32|
MV .D1X B6,A3 ; |32|
STW .D2T1 A3,*+SP(24) ; |32|
STW .D2T1 A6,*+SP(12) ; |32|
STW .D2T2 B4,*+SP(8) ; |32|
STW .D2T1 A4,*+SP(4) ; |32|
LDW .D2T2 *+SP(12),B4 ; |32|
NOP 4
LDNDW .D2T2 *B4,B7:B6 ; |32|
NOP 3
ADD .D2 SP,16,B4 ; |32|
STNDW .D2T2 B7:B6,*B4 ; |32|
NOP 2
.line 8
MVK .D2 1,B4 ; |38|
STW .D2T2 B4,*+SP(2032) ; |38|
NOP 2
.line 9
LDW .D2T2 *+SP(16),B4 ; |39|
NOP 4
STW .D2T2 B4,*+SP(2036) ; |39|
NOP 2
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -