📄 taming.asm
字号:
;***************************************************************
;* TMS320C54x C/C++ Codegen PC Version 3.83 *
;* Date/Time created: Mon Aug 22 19:45:37 2005 *
;***************************************************************
.mmregs
FP .set AR7
.c_mode
.file "TAMING.C"
.bss _L_exc_err,8,0,2
.sym _L_exc_err,_L_exc_err, 53, 3, 128,, 4
; d:\program files\ti\c5400\cgtools\bin\opt500.exe -i15 -q -O3 C:\DOCUME~1\ltd\LOCALS~1\Temp\TI280_2 C:\DOCUME~1\ltd\LOCALS~1\Temp\TI280_5 -w e:/ata_work_dir/g729a_v1.7_src/G729a_v1_7/Debug
.sect ".text"
.global _update_exc_err
.sym _update_exc_err,_update_exc_err, 32, 2, 0
.func 79
;***************************************************************
;* FUNCTION DEF: _update_exc_err *
;***************************************************************
;***************************************************************
;* *
;* Using -g (debug) with optimization (-o3) may disable key op *
;* *
;***************************************************************
_update_exc_err:
.line 5
;* A assigned to _gain_pit
.sym _gain_pit,0, 3, 17, 16
.sym _T0,12, 3, 9, 16
;* BRC assigned to L$2
;* A assigned to L$2
.sym _L_temp,6, 5, 1, 32
.sym _L_temp,6, 5, 1, 32
.sym _L_temp,6, 5, 1, 32
;* A assigned to _L_acc
.sym _L_acc,0, 5, 4, 32
;* A assigned to _L_acc
.sym _L_acc,0, 5, 4, 32
;* A assigned to _L_acc
.sym _L_acc,0, 5, 4, 32
;* AR1 assigned to U$28
;* AR1 assigned to U$28
;* AR7 assigned to _gain_pit
.sym _gain_pit,16, 3, 4, 16
;* AR1 assigned to _T0
.sym _T0,10, 3, 4, 16
.sym _L_worst,4, 5, 1, 32
.sym _hi,2, 3, 1, 16
.sym _lo,3, 3, 1, 16
;* AR6 assigned to L$1
;* A assigned to A$4
;* B assigned to C$3
;* B assigned to C$2
;* AR2 assigned to C$1
PSHM AR1
PSHM AR6
PSHM AR7
FRAME #-8
NOP
MVDK *SP(12),*(AR1)
STLM A,AR7
.line 11
RSBX OVM
SSBX SXM
NOP
LD #-1,16,A ; |89|
OR #65535,A,A ; |89|
DST A,*SP(4) ; |89|
.line 14
LD *(AR1),A ; |92|
SUB #40,A,A ; |92|
BC L3,ALT ; |92|
; branch occurs ; |92|
.line 40
LD *(AR1),16,A ; |118|
SSBX OVM
LD #_tab_zone,B
SUB #1,16,A,A ; |118|
RSBX OVM
SFTA A,-16,A ; |118|
ADD B,A ; |118|
STLM A,AR2
LD *(AR1),16,A ; |118|
SSBX OVM
NOP
SUB #40,16,A,A ; |118|
RSBX OVM
SFTA A,-16,A ; |118|
ADD B,A ; |118|
STLM A,AR1
NOP
MVDK *AR2,*(AR2)
LD *AR1,B
LD *(BL),A ; |118|
SUB *(AR2),A ; |118|
BC L5,AGT ; |118|
; branch occurs ; |118|
SFTL B,#1,A
ADD #_L_exc_err,A,A
STLM A,AR1
LDM AR2,A
SUB B,A
ADD #1,A,A
STLM A,AR6
L1:
.line 41
LDM SP,A
ADD #2,A
STL A,*SP(0)
RSBX FRCT
LDM SP,A
ADD #3,A
STL A,*SP(1)
DLD *AR1+,A ; |119|
CALL #_L_Extract ; |119|
; call occurs [#_L_Extract] ; |119|
.line 42
LD *SP(3),A
RSBX FRCT
RSBX OVM
STL A,*SP(0)
MVKD *(AR7),*SP(1)
LD *SP(2),A
CALL #_Mpy_32_16 ; |120|
; call occurs [#_Mpy_32_16] ; |120|
.line 43
RSBX FRCT
RSBX OVM
ST #1,*SP(0) ; |121|
CALL #_L_shl ; |121|
; call occurs [#_L_shl] ; |121|
.line 44
RSBX SXM
SSBX OVM
LD #16384,B
ADD A,B ; |122|
DST B,*SP(6) ; |122|
.line 45
RSBX OVM
NOP
DLD *SP(4),A
RSBX FRCT
DST A,*SP(0) ; |123|
CALLD #_L_sub ; |123|
NOP
LD B,A ; |123|
; call occurs [#_L_sub] ; |123|
RSBX OVM
SSBX SXM
SFTA A,8 ; |123|
SFTA A,-8 ; |123|
BC L2,ALEQ ; |123|
; branch occurs ; |123|
.line 46
DLD *SP(6),A
DST A,*SP(4) ; |124|
L2:
.line 47
BANZ L1,*+AR6(-1) ; |125|
; branch occurs ; |125|
B L5 ; |125|
; branch occurs ; |125|
L3:
.line 15
LDM SP,A
ADD #2,A
STL A,*SP(0)
RSBX FRCT
LDM SP,A
ADD #3,A
STL A,*SP(1)
DLD *(_L_exc_err),A ; |93|
CALL #_L_Extract ; |93|
; call occurs [#_L_Extract] ; |93|
.line 16
LD *SP(3),A
RSBX FRCT
RSBX OVM
STL A,*SP(0)
MVKD *(AR7),*SP(1)
LD *SP(2),A
CALL #_Mpy_32_16 ; |94|
; call occurs [#_Mpy_32_16] ; |94|
.line 17
RSBX FRCT
RSBX OVM
ST #1,*SP(0) ; |95|
CALL #_L_shl ; |95|
; call occurs [#_L_shl] ; |95|
.line 18
SSBX OVM
RSBX SXM
LD #16384,B
ADD A,B ; |96|
DST B,*SP(6) ; |96|
.line 19
SSBX SXM
NOP
LD #-1,A
RSBX FRCT
RSBX OVM
DST A,*SP(0) ; |97|
CALLD #_L_sub ; |97|
NOP
LD B,A ; |97|
; call occurs [#_L_sub] ; |97|
RSBX OVM
SSBX SXM
SFTA A,8 ; |97|
SFTA A,-8 ; |97|
BC L4,ALEQ ; |97|
; branch occurs ; |97|
.line 21
DLD *SP(6),A
DST A,*SP(4) ; |99|
L4:
.line 23
LDM SP,A
ADD #2,A
STL A,*SP(0)
RSBX FRCT
LDM SP,A
ADD #3,A
STL A,*SP(1)
DLD *SP(6),A ; |101|
CALL #_L_Extract ; |101|
; call occurs [#_L_Extract] ; |101|
.line 24
LD *SP(3),A
RSBX FRCT
RSBX OVM
STL A,*SP(0)
MVKD *(AR7),*SP(1)
LD *SP(2),A
CALL #_Mpy_32_16 ; |102|
; call occurs [#_Mpy_32_16] ; |102|
.line 25
RSBX FRCT
RSBX OVM
ST #1,*SP(0) ; |103|
CALL #_L_shl ; |103|
; call occurs [#_L_shl] ; |103|
.line 26
RSBX SXM
SSBX OVM
LD #16384,B
ADD A,B ; |104|
DST B,*SP(6) ; |104|
.line 27
RSBX OVM
NOP
DLD *SP(4),A
RSBX FRCT
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -