📄 lpc_asm.asm
字号:
;***************************************************************
;* TMS320C54x C/C++ Codegen PC Version 3.831 *
;* Date/Time created: Mon Aug 22 11:50:38 2005 *
;***************************************************************
.mmregs
FP .set AR7
.c_mode
.file "LPC.C"
.sect ".cinit"
.align 1
.field IR_1,16
.field _old_A+0,16
.field 4096,16 ; _old_A[0] @ 0
.field 0,16 ; _old_A[1] @ 16
.field 0,16 ; _old_A[2] @ 32
.field 0,16 ; _old_A[3] @ 48
.field 0,16 ; _old_A[4] @ 64
.field 0,16 ; _old_A[5] @ 80
.field 0,16 ; _old_A[6] @ 96
.field 0,16 ; _old_A[7] @ 112
.field 0,16 ; _old_A[8] @ 128
.field 0,16 ; _old_A[9] @ 144
.field 0,16 ; _old_A[10] @ 160
IR_1: .set 11
.sect ".text"
.bss _old_A,11,0,0
.sym _old_A,_old_A, 51, 3, 176,, 11
.sect ".cinit"
.align 1
.field IR_2,16
.field _old_rc+0,16
.field 0,16 ; _old_rc[0] @ 0
.field 0,16 ; _old_rc[1] @ 16
IR_2: .set 2
.sect ".text"
.bss _old_rc,2,0,0
.sym _old_rc,_old_rc, 51, 3, 32,, 2
; d:\ti\c5400\cgtools\bin\opt500.exe -i15 -q -O3 C:\DOCUME~1\WANGLA~1\LOCALS~1\Temp\TI1648_2 C:\DOCUME~1\WANGLA~1\LOCALS~1\Temp\TI1648_5 -w F:/CODE/g729a_v1.7/G729A/Debug
.sect ".text"
.global _Test_Overflow
.sym _Test_Overflow,_Test_Overflow, 35, 2, 0
.func 338
;***************************************************************
;* FUNCTION DEF: _Test_Overflow *
;***************************************************************
;***************************************************************
;* *
;* Using -g (debug) with optimization (-o3) may disable key op *
;* *
;***************************************************************
_Test_Overflow:
;* A assigned to _a
.sym _a,0, 19, 17, 16
.sym _f1,2, 19, 9, 16
.sym _f2,3, 19, 9, 16
;* BRC assigned to L$1
;* A assigned to L$1
;* B assigned to _temp
.sym _temp,6, 5, 4, 32
;* B assigned to _temp
.sym _temp,6, 5, 4, 32
;* A assigned to _t0
.sym _t0,0, 5, 4, 32
;* A assigned to _t0
.sym _t0,0, 5, 4, 32
;* AR3 assigned to _ovf_coef
.sym _ovf_coef,12, 3, 4, 16
;* AR1 assigned to _f2
.sym _f2,10, 19, 4, 16
;* B assigned to _f1
.sym _f1,6, 19, 4, 16
;* A assigned to _a
.sym _a,0, 19, 4, 16
;* AR1 assigned to U$40
;* AR4 assigned to U$26
;* AR5 assigned to U$17
;* AR2 assigned to U$8
;* A assigned to C$2
;* A assigned to C$1
PSHM AR1
STLM A,AR2
ADD #11,A,A
LD *SP(2),B
STLM A,AR5
SUB #1,B,A
STLM A,AR4
NOP
MVDK *SP(3),*(AR1)
STM #0,AR3
STM #4,BRC
RPTB L10-1
; loop starts
L1:
.line 11
SSBX SXM
LD *+AR2(1),B ; |348|
SFTL B,#14,A ; |348|
.line 14
SFTL A,#1,A ; |351|
.line 23
LD *+AR5(-1),B ; |360|
SFTL B,#14,B ; |360|
.line 34
SFTL B,#1,B ; |371|
ADD B,A ; |371|
.line 54
SFTL A,#-16,B ; |391|
LD *(BL),B ; |391|
SUB *+AR4(1),B,A
LD A,B ; |391|
SFTA B,8 ; |391|
SFTA B,-8 ; |391|
RSBX SXM
NOP
SUB #32768,B,B ; |391|
BC L3,BGEQ ; |391|
; branch occurs ; |391|
.line 59
LD A,B ; |396|
SSBX SXM
SFTA B,8 ; |396|
SFTA B,-8 ; |396|
SUB #-32768,B,B ; |396|
BC L2,BLT ; |396|
; branch occurs ; |396|
.line 67
BD L5 ; |404|
STL A,*AR4(1) ; |404|
; branch occurs ; |404|
L2:
.line 62
ST #-32768,*AR4(1) ; |399|
.line 63
B L4 ; |400|
; branch occurs ; |400|
L3:
.line 57
ST #32767,*AR4(1) ; |394|
L4:
.line 71
STM #1,AR3
L5:
.line 75
SSBX SXM
NOP
LD *AR2,B ; |412|
SFTL B,#15,A ; |412|
.line 87
LD *AR5,B ; |424|
SFTL B,#15,B ; |424|
.line 97
SUB B,A ; |434|
.line 115
SFTL A,#-16,B ; |452|
LD *(BL),B ; |452|
ADD *AR1,B,A
LD A,B ; |452|
SFTA B,8 ; |452|
SFTA B,-8 ; |452|
RSBX SXM
NOP
SUB #32768,B,B ; |452|
BC L7,BGEQ ; |452|
; branch occurs ; |452|
.line 120
LD A,B ; |457|
SSBX SXM
SFTA B,8 ; |457|
SFTA B,-8 ; |457|
SUB #-32768,B,B ; |457|
BC L6,BLT ; |457|
; branch occurs ; |457|
.line 128
BD L9 ; |465|
STL A,*AR1(1) ; |465|
; branch occurs ; |465|
L6:
.line 123
ST #-32768,*AR1(1) ; |460|
.line 124
B L8 ; |461|
; branch occurs ; |461|
L7:
.line 118
ST #32767,*AR1(1) ; |455|
L8:
.line 131
STM #1,AR3
L9:
.line 132
MAR *AR1+
; loop ends ; |469|
L10:
.line 134
LDM AR3,A
.line 135
POPM AR1 ; |471|
RET ; |471|
; return occurs ; |471|
.endfunc 472,000000400h,1
.sect ".text"
.global _Levinson
.sym _Levinson,_Levinson, 32, 2, 0
.func 201
;***************************************************************
;* FUNCTION DEF: _Levinson *
;***************************************************************
;***************************************************************
;* *
;* Using -g (debug) with optimization (-o3) may disable key op *
;* *
;***************************************************************
_Levinson:
.line 7
;* A assigned to _Rh
.sym _Rh,0, 19, 17, 16
.sym _Rl,78, 19, 9, 16
.sym _A,79, 19, 9, 16
.sym _rc,80, 19, 9, 16
;* BRC assigned to L$4
;* BRC assigned to L$6
;* A assigned to L$6
;* A assigned to L$4
;* A assigned to _t0
.sym _t0,0, 5, 4, 32
;* A assigned to _t0
.sym _t0,0, 5, 4, 32
;* A assigned to _t0
.sym _t0,0, 5, 4, 32
.sym _t0,60, 5, 1, 32
.sym _t0,60, 5, 1, 32
;* A assigned to _t0
.sym _t0,0, 5, 4, 32
;* A assigned to _t0
.sym _t0,0, 5, 4, 32
.sym _t0,60, 5, 1, 32
;* A assigned to _t1
.sym _t1,0, 5, 4, 32
.sym _t1,58, 5, 1, 32
;* AR5 assigned to U$83
;* AR6 assigned to U$83
;* AR2 assigned to U$80
;* AR1 assigned to U$80
;* AR3 assigned to U$76
;* AR4 assigned to U$74
;* AR7 assigned to U$74
;* AR1 assigned to U$48
;* AR6 assigned to U$46
.sym _Rh,54, 19, 1, 16
.sym _Rl,57, 19, 1, 16
.sym _A,56, 19, 1, 16
.sym _rc,55, 19, 1, 16
.sym _i,66, 3, 1, 16
;* AR1 assigned to _j
.sym _j,10, 3, 4, 16
.sym _hi,4, 3, 1, 16
.sym _lo,5, 3, 1, 16
.sym _Kh,6, 3, 1, 16
.sym _Kl,7, 3, 1, 16
.sym _alp_h,8, 3, 1, 16
.sym _alp_l,9, 3, 1, 16
.sym _alp_exp,62, 3, 1, 16
.sym _t2,58, 5, 1, 32
;* AR7 assigned to L$2
;* AR2 assigned to U$116
;* AR3 assigned to U$114
;* AR7 assigned to U$105
;* AR1 assigned to U$99
;* AR6 assigned to U$97
;* B assigned to C$4
;* B assigned to C$3
;* AR2 assigned to C$2
;* AR2 assigned to C$1
.sym _Ah,10, 51, 1, 176,, 11
.sym _Al,21, 51, 1, 176,, 11
.sym _Anh,32, 51, 1, 176,, 11
.sym _Anl,43, 51, 1, 176,, 11
PSHM AR1
PSHM AR6
PSHM AR7
FRAME #-74
NOP
STL A,*SP(54)
LD *SP(80),A
STL A,*SP(55)
LD *SP(79),A
STL A,*SP(56)
LD *SP(78),A
STL A,*SP(57)
.line 19
STLM A,AR1
RSBX FRCT
RSBX OVM
LD *AR1(1),A
MVDK *SP(54),*(AR1)
STL A,*SP(0)
LD *AR1(1),A
CALL #_L_Comp ; |219|
; call occurs [#_L_Comp] ; |219|
DST A,*SP(58) ; |219|
.line 21
LD *AR1,A
MVDK *SP(57),*(AR1)
STL A,*SP(0)
LD *AR1,A
STL A,*SP(1)
SSBX SXM
SSBX OVM
DLD *SP(58),A
ABS A,A ; |221|
RSBX OVM
RSBX FRCT
NOP
CALL #_Div_32 ; |221|
; call occurs [#_Div_32] ; |221|
DST A,*SP(60) ; |221|
.line 22
SSBX SXM
NOP
DLD *SP(58),A
BC L11,ALEQ ; |222|
; branch occurs ; |222|
RSBX OVM
NOP
DLD *SP(60),A
SSBX OVM
NOP
NEG A,A ; |222|
DST A,*SP(60) ; |222|
L11:
.line 23
RSBX OVM
LDM SP,A
ADD #6,A
RSBX FRCT
STL A,*SP(0)
LDM SP,A
ADD #7,A
STL A,*SP(1)
DLD *SP(60),A ; |223|
CALL #_L_Extract ; |223|
; call occurs [#_L_Extract] ; |223|
.line 24
MVDK *SP(55),*(AR1)
LD *SP(6),A
STL A,*AR1
.line 25
RSBX OVM
RSBX FRCT
DLD *SP(60),A ; |225|
ST #4,*SP(0) ; |225|
CALL #_L_shr ; |225|
; call occurs [#_L_shr] ; |225|
DST A,*SP(60) ; |225|
.line 26
RSBX OVM
LDM SP,A
ADD #11,A
STL A,*SP(0)
LDM SP,A
ADD #22,A
STL A,*SP(1)
RSBX FRCT
DLD *SP(60),A ; |226|
CALL #_L_Extract ; |226|
; call occurs [#_L_Extract] ; |226|
.line 30
LD *SP(7),A
STL A,*SP(0)
LD *SP(6),A
STL A,*SP(1)
LD *SP(7),A
STL A,*SP(2)
RSBX FRCT
RSBX OVM
LD *SP(6),A
CALL #_Mpy_32 ; |230|
; call occurs [#_Mpy_32] ; |230|
.line 31
RSBX OVM
NOP
SFTA A,8 ; |231|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -