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


;*************************************************************** 
;* TMS320C54x C/C++ Codegen                   PC Version 3.83  * 
;* Date/Time created: Mon Aug 22 19:45:34 2005                 * 
;*************************************************************** 
	.mmregs 
FP	.set	AR7 
	.c_mode 
	.file	"PITCH_A.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	_Pitch_fr3_fast 
	.sym	_Pitch_fr3_fast,_Pitch_fr3_fast, 35, 2, 0 
	.func	18 
 
;*************************************************************** 
;* FUNCTION DEF: _Pitch_fr3_fast                               * 
;*************************************************************** 
 
;*************************************************************** 
;*                                                             * 
;* Using -g (debug) with optimization (-o3) may disable key op * 
;*                                                             * 
;*************************************************************** 
_Pitch_fr3_fast: 
	.line	11 
;* A     assigned to _exc 
	.sym	_exc,0, 19, 17, 16 
	.sym	_xn,98, 19, 9, 16 
	.sym	_h,99, 19, 9, 16 
	.sym	_L_subfr,100, 3, 9, 16 
	.sym	_t0_min,101, 3, 9, 16 
	.sym	_t0_max,102, 3, 9, 16 
	.sym	_i_subfr,103, 3, 9, 16 
	.sym	_pit_frac,104, 19, 9, 16 
;* A     assigned to _L_temp 
	.sym	_L_temp,0, 5, 4, 32 
;* A     assigned to _L_temp 
	.sym	_L_temp,0, 5, 4, 32 
;* A     assigned to _L_temp 
	.sym	_L_temp,0, 5, 4, 32 
;* A     assigned to _corr 
	.sym	_corr,0, 5, 4, 32 
	.sym	_corr,92, 5, 1, 32 
	.sym	_corr,92, 5, 1, 32 
	.sym	_max,90, 5, 1, 32 
	.sym	_max,90, 5, 1, 32 
;* AR1   assigned to _t0 
	.sym	_t0,10, 3, 4, 16 
	.sym	_t,88, 3, 1, 16 
	.sym	_pit_frac,85, 19, 1, 16 
	.sym	_i_subfr,86, 3, 1, 16 
	.sym	_t0_max,87, 3, 1, 16 
;* AR1   assigned to _t0_min 
	.sym	_t0_min,10, 3, 4, 16 
;* AR7   assigned to _L_subfr 
	.sym	_L_subfr,16, 3, 4, 16 
;* A     assigned to _h 
	.sym	_h,0, 19, 4, 16 
;* B     assigned to _xn 
	.sym	_xn,6, 19, 4, 16 
	.sym	_exc,84, 19, 1, 16 
;* AR6   assigned to U$16 
	.sym	_Dn,4, 51, 1, 640,, 40 
	.sym	_exc_tmp,44, 51, 1, 640,, 40 
        PSHM      AR1 
        PSHM      AR6 
        PSHM      AR7 
        FRAME     #-94 
        NOP 
        STL       A,*SP(84) 
        LD        *SP(104),A 
        STL       A,*SP(85) 
        MVDK      *SP(101),*(AR1) 
        LD        *SP(103),A 
        MVDK      *SP(100),*(AR7) 
        STL       A,*SP(86) 
        LD        *SP(102),A 
        STL       A,*SP(87) 
        LD        *SP(99),A 
        LD        *SP(98),B 
	.line	21 
        STL       B,*SP(0) 
        LDM       SP,B 
        ADD       #4,B 
        STL       B,*SP(1) 
        CALL      #_Cor_h_X             ; |38|  
        ; call occurs [#_Cor_h_X] ; |38|  
	.line	28 
	.line	30 
        SSBX      SXM 
        MVKD      *(AR1),*SP(88) 
        LD        *SP(88),A 
        LD        *SP(87),B 
        SUB       *(BL),A               ; |47|  
        BC        L3,AGT                ; |47|  
        ; branch occurs ; |47|  
        LD        *SP(88),B 
        LD        *SP(84),A 
        SUB       B,A 
        STLM      A,AR6 
        LD        *SP(87),A 
        SUB       B,A 
        ADD       #1,A,A 
        STL       A,*SP(87) 
	.line	27 
        LD        #-32768,16,A          ; |44|  
        DST       A,*SP(90)             ; |44|  
L1:     
	.line	32 
        MVKD      *(AR6),*SP(0) 
        LDM       SP,A 
        MVKD      *(AR7),*SP(1) 
        CALLD     #_Dot_Product         ; |49|  
        ADD       #4,A 
        ; call occurs [#_Dot_Product] ; |49|  
        DST       A,*SP(92)             ; |49|  
	.line	33 
        DLD       *SP(90),A 
        DST       A,*SP(0)              ; |50|  
        DLD       *SP(92),A             ; |50|  
        CALL      #_L_sub               ; |50|  
        ; call occurs [#_L_sub] ; |50|  
        SSBX      SXM 
        SFTA      A,8                   ; |50|  
        SFTA      A,-8                  ; |50|  
        BC        L2,ALEQ               ; |50|  
        ; branch occurs ; |50|  
	.line	34 
        DLD       *SP(92),A 
        MVDK      *SP(88),*(AR1) 
        DST       A,*SP(90)             ; |51|  
L2:     
	.line	35 
        LD        *SP(88),A 
        MVDK      *SP(87),*(AR2) 
        ADD       #1,A 
        MAR       *AR6- 
        STL       A,*SP(88) 
        BANZD     L1,*+AR2(-1)          ; |52|  
        MVKD      *(AR2),*SP(87) 
        ; branch occurs ; |52|  
L3:     
	.line	43 
        MVKD      *(AR1),*SP(0) 
        ST        #0,*SP(1)             ; |60|  
        LD        *SP(84),A 
        MVKD      *(AR7),*SP(2) 
        CALL      #_Pred_lt_3           ; |60|  
        ; call occurs [#_Pred_lt_3] ; |60|  
	.line	44 
        LD        *SP(84),A 
        STL       A,*SP(0) 
        MVKD      *(AR7),*SP(1) 
        LDM       SP,A 
        CALLD     #_Dot_Product         ; |61|  
        ADD       #4,A 
        ; call occurs [#_Dot_Product] ; |61|  
        DST       A,*SP(90)             ; |61|  
	.line	45 
        MVDK      *SP(85),*(AR2) 
        ST        #0,*AR2               ; |62|  
	.line	49 
        MVDK      *SP(86),*(AR2) 
        BANZ      L4,*AR2               ; |66|  
        ; branch occurs ; |66|  
        SSBX      SXM 
        LD        *(AR1),A              ; |66|  
        SUB       #84,A,A               ; |66|  
        BC        L4,ALEQ               ; |66|  
        ; branch occurs ; |66|  
	.line	50 
        BD        L7                    ; |67|  
        NOP 
        LDM       AR1,A 
        ; branch occurs ; |67|  
L4:     
	.line	52 
        LDM       SP,A 
        ADD       #44,A 
        STL       A,*SP(0) 
        MVKD      *(AR7),*SP(1) 
        LD        *SP(84),A 
        CALL      #_Copy                ; |69|  
        ; call occurs [#_Copy] ; |69|  
	.line	56 
        MVKD      *(AR1),*SP(0) 
        ST        #-1,*SP(1)            ; |73|  
        LD        *SP(84),A 
        MVKD      *(AR7),*SP(2) 
        CALL      #_Pred_lt_3           ; |73|  
        ; call occurs [#_Pred_lt_3] ; |73|  
	.line	57 
        LD        *SP(84),A 
        STL       A,*SP(0) 
        MVKD      *(AR7),*SP(1) 
        LDM       SP,A 
        CALLD     #_Dot_Product         ; |74|  
        ADD       #4,A 
        ; call occurs [#_Dot_Product] ; |74|  
        DST       A,*SP(92)             ; |74|  
	.line	58 
        DLD       *SP(90),A 
        DST       A,*SP(0)              ; |75|  
        DLD       *SP(92),A             ; |75|  
        CALL      #_L_sub               ; |75|  
        ; call occurs [#_L_sub] ; |75|  
        SSBX      SXM 
        SFTA      A,8                   ; |75|  
        SFTA      A,-8                  ; |75|  
        BC        L5,ALEQ               ; |75|  
        ; branch occurs ; |75|  
	.line	60 
        DLD       *SP(92),A 
        DST       A,*SP(90)             ; |77|  
	.line	61 
        MVDK      *SP(85),*(AR2) 
        ST        #-1,*AR2              ; |78|  
	.line	62 
        LDM       SP,A 
        ADD       #44,A 
        STL       A,*SP(0) 
        MVKD      *(AR7),*SP(1) 
        LD        *SP(84),A 
        CALL      #_Copy                ; |79|  
        ; call occurs [#_Copy] ; |79|  
L5:     
	.line	67 
        MVKD      *(AR1),*SP(0) 
        ST        #1,*SP(1)             ; |84|  
        LD        *SP(84),A 
        MVKD      *(AR7),*SP(2) 
        CALL      #_Pred_lt_3           ; |84|  
        ; call occurs [#_Pred_lt_3] ; |84|  
	.line	68 
        LD        *SP(84),A 
        STL       A,*SP(0) 
        MVKD      *(AR7),*SP(1) 
        LDM       SP,A 
        CALLD     #_Dot_Product         ; |85|  
        ADD       #4,A 
        ; call occurs [#_Dot_Product] ; |85|  
	.line	69 
        DLD       *SP(90),B 
        DST       B,*SP(0)              ; |86|  
        CALL      #_L_sub               ; |86|  
        ; call occurs [#_L_sub] ; |86|  
        SSBX      SXM 
        SFTA      A,8                   ; |86|  
        SFTA      A,-8                  ; |86|  
        BC        L6,ALEQ               ; |86|  
        ; branch occurs ; |86|  
	.line	72 
        MVDK      *SP(85),*(AR2) 
        ST        #1,*AR2               ; |89|  
	.line	73 
        BD        L7                    ; |90|  
        NOP 
        LDM       AR1,A 
        ; branch occurs ; |90|  
L6:     
	.line	75 
        LD        *SP(84),A 
        STL       A,*SP(0) 
        MVKD      *(AR7),*SP(1) 
        LDM       SP,A 
        CALLD     #_Copy                ; |92|  
        ADD       #44,A 
        ; call occurs [#_Copy] ; |92|  
        LDM       AR1,A 
L7:     
	.line	77 
        FRAME     #94                   ; |92|  
        POPM      AR7                   ; |92|  
        POPM      AR6                   ; |92|  
        POPM      AR1                   ; |92|  
        RET       ; |92|  
        ; return occurs ; |92|  
	.endfunc	94,000018400h,97 
 
 
;*************************************************************** 
;* UNDEFINED EXTERNAL REFERENCES                               * 
;*************************************************************** 
	.global	_L_sub 
	.global	_Pred_lt_3 
	.global	_Cor_h_X 
	.global	_Copy 
	.global	_Dot_Product 
 
;*************************************************************** 
;* TYPE INFORMATION                                            * 
;*************************************************************** 
	.sym	_Word16, 0, 3, 13, 16 
	.sym	_Word16, 0, 3, 13, 16 
	.sym	_Word32, 0, 5, 13, 32