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


;*************************************************************** 
;* TMS320C54x C/C++ Codegen                   PC Version 3.83  * 
;* Date/Time created: Mon Aug 22 19:45:32 2005                 * 
;*************************************************************** 
	.mmregs 
FP	.set	AR7 
	.c_mode 
	.file	"GAINPRED.C" 
;	d:\program files\ti\c5400\cgtools\bin\opt500.exe -i15 -q -O3 C:\DOCUME~1\ltd\LOCALS~1\Temp\TI1560_2 C:\DOCUME~1\ltd\LOCALS~1\Temp\TI1560_5 -w e:/ata_work_dir/g729a_v1.7_src/G729a_v1_7/Debug  
 
	.sect	".text" 
	.global	_Gain_update_erasure 
	.sym	_Gain_update_erasure,_Gain_update_erasure, 32, 2, 0 
	.func	67 
 
;*************************************************************** 
;* FUNCTION DEF: _Gain_update_erasure                          * 
;*************************************************************** 
 
;*************************************************************** 
;*                                                             * 
;* Using -g (debug) with optimization (-o3) may disable key op * 
;*                                                             * 
;*************************************************************** 
_Gain_update_erasure: 
	.line	4 
;* A     assigned to _past_qua_en 
	.sym	_past_qua_en,0, 19, 17, 16 
;* BRC   assigned to L$1 
;* BRC   assigned to L$2 
;* A     assigned to L$2 
;* A     assigned to L$1 
;* AR1   assigned to U$4 
;* AR1   assigned to U$4 
;* AR6   assigned to _past_qua_en 
	.sym	_past_qua_en,15, 19, 4, 16 
;* A     assigned to _av_pred_en 
	.sym	_av_pred_en,0, 3, 4, 16 
;* A     assigned to _L_tmp 
	.sym	_L_tmp,0, 5, 4, 32 
;* B     assigned to A$1 
        PSHM      AR1 
        PSHM      AR6 
        FRAME     #-3 
        STLM      A,AR6 
        NOP 
        NOP 
        MVMM      AR6,AR1 
	.line	8 
        STM       #3,BRC 
        LD        #0,A 
        RPTB      L2-1 
        ; loop starts 
L1:     
	.line	10 
        RSBX      OVM 
        SSBX      SXM 
        SFTA      A,8                   ; |76|  
        LD        *AR1+,B               ; |76|  
        SFTA      A,-8                  ; |76|  
        SSBX      OVM 
        RSBX      SXM 
        NOP 
        ADD       B,A                   ; |76|  
        ; loop ends ; |76|  
L2:     
	.line	11 
        RSBX      FRCT 
        RSBX      OVM 
        ST        #2,*SP(0)             ; |77|  
        CALL      #_L_shr               ; |77|  
        ; call occurs [#_L_shr] ; |77|  
	.line	12 
        SSBX      SXM 
        RSBX      OVM 
        LD        *(AL),16,A            ; |78|  
        SSBX      OVM 
        NOP 
        SUB       #4096,16,A,A          ; |78|  
        SFTA      A,-16,A               ; |78|  
	.line	14 
        RSBX      OVM 
        LD        *(AL),16,B            ; |80|  
        SSBX      OVM 
        NOP 
        SUB       #-14336,16,B,B        ; |80|  
        SFTA      B,-16,B               ; |80|  
        LD        *(BL),B               ; |80|  
        BC        L3,BGEQ               ; |80|  
        ; branch occurs ; |80|  
	.line	15 
        LD        #-14336,A 
L3:     
        RSBX      OVM 
        LDM       AR6,B 
        STM       #2,BRC 
        ADD       #3,B,B 
        STLM      B,AR1 
        RPTB      L5-1 
        ; loop starts 
L4:     
	.line	19 
        LD        *AR1(-1),B 
        STL       B,*AR1- 
	.line	20 
        ; loop ends ; |86|  
L5:     
	.line	21 
        STL       A,*AR6 
	.line	22 
        ANDM      #-833,*(ST1) 
        ANDM      #-4,*(PMST) 
        FRAME     #3 
        POPM      AR6 
        POPM      AR1 
        RET 
        ; return occurs 
	.endfunc	88,000008400h,5 
 
 
 
	.sect	".text" 
	.global	_Gain_update 
	.sym	_Gain_update,_Gain_update, 32, 2, 0 
	.func	29 
 
;*************************************************************** 
;* FUNCTION DEF: _Gain_update                                  * 
;*************************************************************** 
 
;*************************************************************** 
;*                                                             * 
;* Using -g (debug) with optimization (-o3) may disable key op * 
;*                                                             * 
;*************************************************************** 
_Gain_update: 
	.line	5 
;* A     assigned to _past_qua_en 
	.sym	_past_qua_en,0, 19, 17, 16 
	.sym	_L_gbk12,8, 5, 9, 32 
;* BRC   assigned to L$1 
;* A     assigned to L$1 
;* AR1   assigned to U$4 
;* A     assigned to _L_acc 
	.sym	_L_acc,0, 5, 4, 32 
	.sym	_frac,2, 3, 1, 16 
	.sym	_exp,3, 3, 1, 16 
;* T     assigned to _tmp 
	.sym	_tmp,20, 3, 4, 16 
;* A     assigned to _L_gbk12 
	.sym	_L_gbk12,0, 5, 4, 32 
;* AR6   assigned to _past_qua_en 
	.sym	_past_qua_en,15, 19, 4, 16 
;* B     assigned to A$1 
        PSHM      AR1 
        PSHM      AR6 
        FRAME     #-5 
        RSBX      OVM 
        STLM      A,AR6 
        STM       #2,BRC 
        LDM       AR6,B 
        ADD       #3,B,B 
        STLM      B,AR1 
        DLD       *SP(8),A              ; |33|  
        RPTB      L7-1 
        ; loop starts 
L6:     
	.line	11 
        LD        *AR1(-1),B 
        STL       B,*AR1- 
	.line	12 
        ; loop ends ; |40|  
L7:     
	.line	21 
        LDM       SP,B 
        ADD       #3,B 
        STL       B,*SP(0) 
        RSBX      FRCT 
        LDM       SP,B 
        ADD       #2,B 
        STL       B,*SP(1) 
        CALL      #_Log2                ; |49|  
        ; call occurs [#_Log2] ; |49|  
	.line	22 
        SSBX      SXM 
        RSBX      OVM 
        LD        *SP(2),A 
        STL       A,*SP(0) 
        LD        *SP(3),16,A           ; |50|  
        SSBX      OVM 
        RSBX      FRCT 
        SUB       #13,16,A,A            ; |50|  
        RSBX      OVM 
        NOP 
        CALLD     #_L_Comp              ; |50|  
        NOP 
        SFTA      A,-16,A               ; |50|  
        ; call occurs [#_L_Comp] ; |50|  
	.line	23 
        RSBX      FRCT 
        RSBX      OVM 
        ST        #13,*SP(0)            ; |51|  
        CALL      #_L_shl               ; |51|  
        ; call occurs [#_L_shl] ; |51|  
        SFTL      A,#-16,A              ; |51|  
        STLM      A,T 
	.line	24 
        RSBX      OVM 
        SSBX      FRCT 
        LD        #24660,16,A           ; |52|  
        SSBX      SXM 
        SSBX      OVM 
        NOP 
        MPYA      A                     ; |52|  
        STH       A,*AR6                ; |52|  
	.line	25 
        ANDM      #-833,*(ST1) 
        ANDM      #-4,*(PMST) 
        FRAME     #5 
        POPM      AR6 
        POPM      AR1 
        RET 
        ; return occurs 
	.endfunc	53,000008400h,7 
 
 
;*************************************************************** 
;* UNDEFINED EXTERNAL REFERENCES                               * 
;*************************************************************** 
	.global	_L_shl 
	.global	_L_shr 
	.global	_Log2 
	.global	_L_Comp 
 
;*************************************************************** 
;* TYPE INFORMATION                                            * 
;*************************************************************** 
	.sym	_Word16, 0, 3, 13, 16 
	.sym	_Word32, 0, 5, 13, 32 
	.sym	_Word32, 0, 5, 13, 32