⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qua_lsp.asm

📁 g.729汇编手工优化
💻 ASM
📖 第 1 页 / 共 2 页
字号:
;***************************************************************
;* TMS320C54x C/C++ Codegen                   PC Version 3.83  *
;* Date/Time created: Mon Aug 22 19:45:35 2005                 *
;***************************************************************
	.mmregs
FP	.set	AR7
	.c_mode
	.file	"QUA_LSP.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
;	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	_Relspwed
	.sym	_Relspwed,_Relspwed, 32, 2, 0
	.func	70

;***************************************************************
;* FUNCTION DEF: _Relspwed                                     *
;***************************************************************

;***************************************************************
;*                                                             *
;* Using -g (debug) with optimization (-o3) may disable key op *
;*                                                             *
;***************************************************************
_Relspwed:
	.line	13
;* A     assigned to _lsp
	.sym	_lsp,0, 19, 17, 16
	.sym	_wegt,62, 19, 9, 16
	.sym	_lspq,63, 19, 9, 16
	.sym	_lspcb1,64, 211, 9, 16,, 10
	.sym	_lspcb2,65, 211, 9, 16,, 10
	.sym	_fg,66, 979, 9, 16,, 4, 10
	.sym	_freq_prev,67, 211, 9, 16,, 10
	.sym	_fg_sum,68, 211, 9, 16,, 10
	.sym	_fg_sum_inv,69, 211, 9, 16,, 10
	.sym	_code_ana,70, 19, 9, 16
;* BRC   assigned to L$2
;* BRC   assigned to L$3
;* A     assigned to L$3
;* A     assigned to L$2
;* AR1   assigned to U$45
;* AR2   assigned to U$45
;* AR3   assigned to U$40
;* AR4   assigned to U$40
;* AR2   assigned to U$37
;* AR3   assigned to U$37
	.sym	_lsp,42, 19, 1, 16
	.sym	_wegt,50, 19, 1, 16
	.sym	_lspq,49, 19, 1, 16
	.sym	_lspcb1,48, 211, 1, 16,, 10
	.sym	_lspcb2,47, 211, 1, 16,, 10
	.sym	_fg,46, 979, 1, 16,, 4, 10
	.sym	_freq_prev,45, 211, 1, 16,, 10
	.sym	_fg_sum,44, 211, 1, 16,, 10
;* A     assigned to _fg_sum_inv
	.sym	_fg_sum_inv,0, 211, 4, 16,, 10
	.sym	_code_ana,43, 19, 1, 16
	.sym	_index,8, 3, 1, 16
	.sym	_mode_index,9, 3, 1, 16
	.sym	_cand_cur,10, 3, 1, 16
;* AR6   assigned to U$63
;* AR7   assigned to U$54
;* AR1   assigned to U$29
;* AR1   assigned to C$3
;* AR6   assigned to C$2
;* AR7   assigned to C$1
	.sym	_cand,11, 51, 1, 32,, 2
	.sym	_tindex1,13, 51, 1, 32,, 2
	.sym	_tindex2,15, 51, 1, 32,, 2
	.sym	_L_tdist,18, 53, 1, 64,, 2
	.sym	_rbuf,22, 51, 1, 160,, 10
	.sym	_buf,32, 51, 1, 160,, 10
        PSHM      AR1
        PSHM      AR6
        PSHM      AR7
        FRAME     #-58
        RSBX      OVM
        LD        *SP(68),B
        STL       A,*SP(42)
        MVMM      SP,AR6
        STL       B,*SP(44)
        LD        *SP(70),A
        LD        *SP(67),B
        STL       A,*SP(43)
        MVMM      SP,AR7
        STL       B,*SP(45)
        LD        *SP(69),A
        MAR       *+AR6(#18)
        LD        *SP(66),B
        STL       A,*SP(51)
        STL       B,*SP(46)
        MAR       *+AR7(#15)
        LD        *SP(46),A
        LD        *SP(65),B
        STL       A,*SP(52)
        STL       B,*SP(47)
        LD        *SP(44),A
        STL       A,*SP(53)
        LD        *SP(64),B
        LDM       SP,A
        STL       B,*SP(48)
        ADD       #12,A
        STL       A,*SP(54)
        LD        *SP(63),B
        LDM       SP,A
        STL       B,*SP(49)
        ADD       #10,A
        LD        *SP(62),B
        STL       A,*SP(55)
        STL       B,*SP(50)
        LD        #2,A
        STL       A,*SP(56)
L1:    
	.line	23
        LDM       SP,A
        ADD       #22,A
        STL       A,*SP(0)
        RSBX      FRCT
        LD        *SP(52),A
        STL       A,*SP(1)
        LD        *SP(45),A
        STL       A,*SP(2)
        LD        *SP(51),A
        STL       A,*SP(3)
        LD        *SP(42),A
        CALL      #_Lsp_prev_extract    ; |92| 
        ; call occurs [#_Lsp_prev_extract] ; |92| 
	.line	25
        LD        *SP(48),A
        RSBX      OVM
        STL       A,*SP(0)
        RSBX      FRCT
        LDM       SP,A
        ADD       #10,A
        STL       A,*SP(1)
        LDM       SP,A
        CALLD     #_Lsp_pre_select      ; |94| 
        ADD       #22,A
        ; call occurs [#_Lsp_pre_select] ; |94| 
	.line	26
        MVDK      *SP(55),*(AR1)
        LD        *SP(10),A
        STL       A,*+AR1
        MVKD      *(AR1),*SP(55)
	.line	28
        STM       #10,T
        LD        *SP(48),A
        ANDM      #65533,*(PMST)
        RSBX      FRCT
        RSBX      OVM
        ANDM      #65533,*(PMST)
        NOP
        MAC       *SP(10), A            ; |97| 
        STLM      A,AR1
        MVKD      *(AR1),*SP(0)
        LD        *SP(50),A
        STL       A,*SP(1)
        LD        *SP(47),A
        STL       A,*SP(2)
        LDM       SP,A
        ADD       #8,A
        STL       A,*SP(3)
        LDM       SP,A
        CALLD     #_Lsp_select_1        ; |97| 
        ADD       #22,A
        ; call occurs [#_Lsp_select_1] ; |97| 
	.line	30
        LD        *SP(8),A
        MVDK      *SP(54),*(AR2)
        STL       A,*+AR2
        LD        *SP(47),A
        STM       #10,T
        MVKD      *(AR2),*SP(54)
        ANDM      #65533,*(PMST)
        RSBX      OVM
        RSBX      FRCT
        ANDM      #65533,*(PMST)
        NOP
        MAC       *SP(8), A
        STLM      A,AR3
        MVMM      SP,AR2
        STM       #4,BRC
        MAR       *+AR2(#32)
        MVMM      AR1,AR4
        RPTB      L3-1
        ; loop starts
L2:    
	.line	33
        RSBX      OVM
        SSBX      SXM
        NOP
        LD        *AR4+,16,A            ; |102| 
        SSBX      OVM
        NOP
        ADD       *AR3+,16,A,A          ; |102| 
        STH       A,*AR2+               ; |102| 
        ; loop ends ; |102| 
L3:    
	.line	35
        RSBX      OVM
        ST        #10,*SP(0)            ; |104| 
        LDM       SP,A
        CALLD     #_Lsp_expand_1        ; |104| 
        ADD       #32,A
        ; call occurs [#_Lsp_expand_1] ; |104| 
	.line	37
        MVKD      *(AR1),*SP(0)
        LD        *SP(50),A
        RSBX      OVM
        STL       A,*SP(1)
        RSBX      FRCT
        LD        *SP(47),A
        STL       A,*SP(2)
        LDM       SP,A
        ADD       #8,A
        STL       A,*SP(3)
        LDM       SP,A
        CALLD     #_Lsp_select_2        ; |106| 
        ADD       #22,A
        ; call occurs [#_Lsp_select_2] ; |106| 
	.line	39
        LD        *SP(8),A
        STL       A,*AR7
        STM       #10,T
        LD        *SP(47),A
        ANDM      #65533,*(PMST)
        RSBX      FRCT
        RSBX      OVM
        ANDM      #65533,*(PMST)
        NOP
        MAC       *SP(8), A
        ADD       #5,A,A
        STLM      A,AR2
        LD        *SP(48),A
        MAC       *SP(10), A
        MVMM      SP,AR1
        ADD       #5,A,A
        MAR       *+AR1(#37)
        STM       #4,BRC
        STLM      A,AR3
        RPTB      L5-1
        ; loop starts
L4:    
	.line	42
        RSBX      OVM
        SSBX      SXM
        NOP
        LD        *AR3+,16,A            ; |111| 
        SSBX      OVM
        NOP
        ADD       *AR2+,16,A,A          ; |111| 
        STH       A,*AR1+               ; |111| 
        ; loop ends ; |111| 
L5:    
	.line	44
        RSBX      OVM
        ST        #10,*SP(0)            ; |113| 
        LDM       SP,A
        CALLD     #_Lsp_expand_2        ; |113| 
        ADD       #32,A
        ; call occurs [#_Lsp_expand_2] ; |113| 
	.line	46
        RSBX      FRCT
        ST        #5,*SP(0)             ; |115| 
        RSBX      OVM
        LDM       SP,A
        CALLD     #_Lsp_expand_1_2      ; |115| 
        ADD       #32,A
        ; call occurs [#_Lsp_expand_1_2] ; |115| 
	.line	48
        RSBX      OVM
        LDM       SP,A
        ADD       #32,A
        STL       A,*SP(0)
        LDM       SP,A
        MVKD      *(AR6),*SP(1)
        ADD       #22,A
        STL       A,*SP(2)
        RSBX      FRCT
        LD        *SP(53),A
        STL       A,*SP(3)
        LD        *SP(50),A
        CALL      #_Lsp_get_tdist       ; |117| 
        ; call occurs [#_Lsp_get_tdist] ; |117| 
	.line	49
        MAR       *AR7+
        RSBX      OVM
        LD        *SP(51),A
        ADD       #10,A
        STL       A,*SP(51)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -