www.pudn.com > g729a.rar > LSPDEC.asm, change:2005-08-22,size:9815b


;*************************************************************** 
;* TMS320C54x C/C++ Codegen                   PC Version 3.83  * 
;* Date/Time created: Mon Aug 22 19:45:33 2005                 * 
;*************************************************************** 
	.mmregs 
FP	.set	AR7 
	.c_mode 
	.file	"LSPDEC.C" 
	.bss	_freq_prev,40,0,0 
	.sym	_freq_prev,_freq_prev, 243, 3, 640,, 4, 10 
 
	.sect	".cinit" 
	.align	1 
	.field  	IR_1,16 
	.field  	_freq_prev_reset+0,16 
	.field  	2339,16			; _freq_prev_reset[0] @ 0 
	.field  	4679,16			; _freq_prev_reset[1] @ 16 
	.field  	7018,16			; _freq_prev_reset[2] @ 32 
	.field  	9358,16			; _freq_prev_reset[3] @ 48 
	.field  	11698,16			; _freq_prev_reset[4] @ 64 
	.field  	14037,16			; _freq_prev_reset[5] @ 80 
	.field  	16377,16			; _freq_prev_reset[6] @ 96 
	.field  	18717,16			; _freq_prev_reset[7] @ 112 
	.field  	21056,16			; _freq_prev_reset[8] @ 128 
	.field  	23396,16			; _freq_prev_reset[9] @ 144 
IR_1:	.set	10 
 
	.sect	".text" 
	.bss	_freq_prev_reset,10,0,0 
	.sym	_freq_prev_reset,_freq_prev_reset, 51, 3, 160,, 10 
	.bss	_prev_ma,1,0,0 
	.sym	_prev_ma,_prev_ma, 3, 3, 16 
	.bss	_prev_lsp,10,0,0 
	.sym	_prev_lsp,_prev_lsp, 51, 3, 160,, 10 
;	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	_Lsp_iqua_cs 
	.sym	_Lsp_iqua_cs,_Lsp_iqua_cs, 32, 2, 0 
	.func	51 
 
;*************************************************************** 
;* FUNCTION DEF: _Lsp_iqua_cs                                  * 
;*************************************************************** 
 
;*************************************************************** 
;*                                                             * 
;* Using -g (debug) with optimization (-o3) may disable key op * 
;*                                                             * 
;*************************************************************** 
_Lsp_iqua_cs: 
	.line	6 
;* A     assigned to _prm 
	.sym	_prm,0, 19, 17, 16 
	.sym	_lsp_q,24, 19, 9, 16 
	.sym	_erase,25, 3, 9, 16 
;* AR1   assigned to _prm 
	.sym	_prm,10, 19, 4, 16 
;* AR7   assigned to _lsp_q 
	.sym	_lsp_q,16, 19, 4, 16 
;* AR2   assigned to _erase 
	.sym	_erase,11, 3, 4, 16 
;* AR6   assigned to _mode_index 
	.sym	_mode_index,15, 3, 4, 16 
	.sym	_code0,18, 3, 1, 16 
;* A     assigned to _code1 
	.sym	_code1,0, 3, 4, 16 
;* AR6   assigned to C$2 
;* AR1   assigned to C$1 
	.sym	_buf,8, 51, 1, 160,, 10 
        PSHM      AR1 
        PSHM      AR6 
        PSHM      AR7 
        FRAME     #-20 
        NOP 
        MVDK      *SP(24),*(AR7) 
        MVDK      *SP(25),*(AR2) 
        STLM      A,AR1 
	.line	13 
        BANZ      L1,*AR2               ; |63|  
        ; branch occurs ; |63|  
	.line	14 
        ST        #7,*SP(0)             ; |64|  
        LD        *AR1,A 
        CALL      #_shr                 ; |64|  
        ; call occurs [#_shr] ; |64|  
        AND       #1,A,A                ; |64|  
        STLM      A,AR6 
	.line	15 
        LD        *AR1,A 
        AND       #127,A,A              ; |65|  
        STL       A,*SP(18) 
	.line	16 
        ST        #5,*SP(0)             ; |66|  
        LD        *AR1(1),A 
        CALL      #_shr                 ; |66|  
        ; call occurs [#_shr] ; |66|  
        AND       #31,A,A               ; |66|  
	.line	21 
        LD        *SP(18),B 
        ST        #_lspcb2,*SP(0)       ; |71|  
        STL       B,*SP(1) 
        STL       A,*SP(2) 
        LD        #31,A 
        AND       *AR1(1),A             ; |71|  
        STL       A,*SP(3) 
        LD        #_fg,A 
        STM       #40,T 
        MAC       *(AR6), A             ; |71|  
        STL       A,*SP(4) 
        ST        #_freq_prev,*SP(5)    ; |71|  
        STM       #10,T 
        LD        #_fg_sum,A 
        MVKD      *(AR7),*SP(6) 
        MAC       *(AR6), A             ; |71|  
        STL       A,*SP(7) 
        CALLD     #_Lsp_get_quant       ; |71|  
        LD        #_lspcb1,A 
        ; call occurs [#_Lsp_get_quant] ; |71|  
	.line	26 
        ST        #_prev_lsp,*SP(0)     ; |76|  
        ST        #10,*SP(1)            ; |76|  
        CALLD     #_Copy                ; |76|  
        NOP 
        LDM       AR7,A 
        ; call occurs [#_Copy] ; |76|  
	.line	27 
        MVMD      AR6,*(_prev_ma) 
	.line	28 
        B         L2                    ; |78|  
        ; branch occurs ; |78|  
L1:     
	.line	32 
        MVKD      *(AR7),*SP(0) 
        ST        #10,*SP(1)            ; |82|  
        STM       #_prev_lsp,AR6 
        CALLD     #_Copy                ; |82|  
        NOP 
        LDM       AR6,A 
        ; call occurs [#_Copy] ; |82|  
	.line	36 
        STM       #_freq_prev,AR1 
        LDM       SP,A 
        ADD       #8,A 
        STM       #40,T 
        STL       A,*SP(0) 
        LD        #_fg,A 
        MAC       *(_prev_ma), A        ; |86|  
        STL       A,*SP(1) 
        STM       #10,T 
        LD        #_fg_sum_inv,A 
        MVKD      *(AR1),*SP(2) 
        MAC       *(_prev_ma), A        ; |86|  
        STL       A,*SP(3) 
        CALLD     #_Lsp_prev_extract    ; |86|  
        NOP 
        LDM       AR6,A 
        ; call occurs [#_Lsp_prev_extract] ; |86|  
	.line	38 
        MVKD      *(AR1),*SP(0) 
        LDM       SP,A 
        CALLD     #_Lsp_prev_update     ; |88|  
        ADD       #8,A 
        ; call occurs [#_Lsp_prev_update] ; |88|  
L2:     
	.line	42 
        FRAME     #20 
        POPM      AR7 
        POPM      AR6 
        POPM      AR1 
        RET 
        ; return occurs 
	.endfunc	92,000018400h,23 
 
 
 
	.sect	".text" 
	.global	_Lsp_decw_reset 
	.sym	_Lsp_decw_reset,_Lsp_decw_reset, 32, 2, 0 
	.func	31 
 
;*************************************************************** 
;* FUNCTION DEF: _Lsp_decw_reset                               * 
;*************************************************************** 
 
;*************************************************************** 
;*                                                             * 
;* Using -g (debug) with optimization (-o3) may disable key op * 
;*                                                             * 
;*************************************************************** 
_Lsp_decw_reset: 
	.line	4 
;* AR1   assigned to U$6 
;* AR7   assigned to K$8 
;* AR6   assigned to L$1 
        PSHM      AR1 
        PSHM      AR6 
        STM       #_freq_prev,AR1 
        PSHM      AR7 
        STM       #4,AR6 
        STM       #_freq_prev_reset,AR7 
        FRAME     #-2 
L3:     
	.line	8 
        MVKD      *(AR1),*SP(0) 
        ST        #10,*SP(1)            ; |38|  
        CALLD     #_Copy                ; |38|  
        NOP 
        LDM       AR7,A 
        ; call occurs [#_Copy] ; |38|  
        NOP 
        BANZD     L3,*+AR6(-1)          ; |38|  
        MAR       *+AR1(#10) 
        ; branch occurs ; |38|  
	.line	10 
        ST        #0,*(_prev_ma)        ; |40|  
	.line	12 
        ST        #_prev_lsp,*SP(0)     ; |42|  
        ST        #10,*SP(1)            ; |42|  
        CALLD     #_Copy                ; |42|  
        NOP 
        LDM       AR7,A 
        ; call occurs [#_Copy] ; |42|  
	.line	13 
        FRAME     #2 
        POPM      AR7 
        POPM      AR6 
        POPM      AR1 
        RET 
        ; return occurs 
	.endfunc	43,000018400h,5 
 
 
 
	.sect	".text" 
	.global	_D_lsp 
	.sym	_D_lsp,_D_lsp, 32, 2, 0 
	.func	101 
 
;*************************************************************** 
;* FUNCTION DEF: _D_lsp                                        * 
;*************************************************************** 
 
;*************************************************************** 
;*                                                             * 
;* Using -g (debug) with optimization (-o3) may disable key op * 
;*                                                             * 
;*************************************************************** 
_D_lsp: 
	.line	6 
;* A     assigned to _prm 
	.sym	_prm,0, 19, 17, 16 
	.sym	_lsp_q,14, 19, 9, 16 
	.sym	_erase,15, 3, 9, 16 
;* AR2   assigned to _erase 
	.sym	_erase,11, 3, 4, 16 
;* AR1   assigned to _lsp_q 
	.sym	_lsp_q,10, 19, 4, 16 
;* A     assigned to _prm 
	.sym	_prm,0, 19, 4, 16 
	.sym	_lsf_q,2, 51, 1, 160,, 10 
        PSHM      AR1 
        FRAME     #-12 
        NOP 
        MVDK      *SP(14),*(AR1) 
        MVDK      *SP(15),*(AR2) 
	.line	10 
        LDM       SP,B 
        ADD       #2,B 
        STL       B,*SP(0) 
        MVKD      *(AR2),*SP(1) 
        CALL      #_Lsp_iqua_cs         ; |110|  
        ; call occurs [#_Lsp_iqua_cs] ; |110|  
	.line	14 
        MVKD      *(AR1),*SP(0) 
        LDM       SP,A 
        ST        #10,*SP(1)            ; |114|  
        CALLD     #_Lsf_lsp2            ; |114|  
        ADD       #2,A 
        ; call occurs [#_Lsf_lsp2] ; |114|  
	.line	16 
	.line	17 
        FRAME     #12 
        POPM      AR1 
        RET 
        ; return occurs 
	.endfunc	117,000000400h,13 
 
 
;*************************************************************** 
;* UNDEFINED EXTERNAL REFERENCES                               * 
;*************************************************************** 
	.global	_Lsf_lsp2 
	.global	_Lsp_get_quant 
	.global	_Lsp_prev_extract 
	.global	_Lsp_prev_update 
	.global	_Copy 
	.global	_shr 
	.global	_lspcb1 
	.global	_lspcb2 
	.global	_fg 
	.global	_fg_sum 
	.global	_fg_sum_inv 
 
;*************************************************************** 
;* TYPE INFORMATION                                            * 
;*************************************************************** 
	.sym	_Word16, 0, 3, 13, 16 
	.sym	_Word16, 0, 3, 13, 16