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

📄 dec_ld8a.asm

📁 g.729汇编手工优化
💻 ASM
📖 第 1 页 / 共 2 页
字号:
	.line	95
        ST        #143,*(_old_T0)       ; |189| 
L8:    
	.line	99
        LD        *SP(6),A
        MVDK      *SP(58),*(AR1)
        STL       A,*AR1+
        MVKD      *(AR1),*SP(58)
	.line	105
        RSBX      OVM
        RSBX      FRCT
        LD        *SP(6),A
        STL       A,*SP(0)
        LD        *SP(7),A
        STL       A,*SP(1)
        LDM       AR7,A
        ADD       *(_exc),A
        ST        #40,*SP(2)            ; |199| 
        CALL      #_Pred_lt_3           ; |199| 
        ; call occurs [#_Pred_lt_3] ; |199| 
	.line	112
        LD        *SP(60),A
        RSBX      OVM
        LD        *(AL),A               ; |206| 
        BC        L9,AEQ                ; |206| 
        ; branch occurs ; |206| 
	.line	115
        RSBX      FRCT
        NOP
        CALL      #_Random              ; |209| 
        ; call occurs [#_Random] ; |209| 
        AND       #8191,A,A             ; |209| 
        STL       A,*AR6
	.line	116
        RSBX      FRCT
        RSBX      OVM
        NOP
        CALL      #_Random              ; |210| 
        ; call occurs [#_Random] ; |210| 
        AND       #15,A,A               ; |210| 
        STL       A,*AR6(1)
L9:    
	.line	118
        LD        *AR6,A
        RSBX      OVM
        STL       A,*SP(0)
        RSBX      FRCT
        LDM       SP,A
        ADD       #18,A
        STL       A,*SP(1)
        LD        *AR6(1),A
        CALL      #_Decod_ACELP         ; |212| 
        ; call occurs [#_Decod_ACELP] ; |212| 
	.line	121
        RSBX      FRCT
        ST        #1,*SP(0)             ; |215| 
        RSBX      OVM
        LD        *(_sharp),A
        CALL      #_shl                 ; |215| 
        ; call occurs [#_shl] ; |215| 
        STLM      A,AR3
	.line	122
        SSBX      SXM
        RSBX      OVM
        LD        #40,A
        SUB       *SP(6),A              ; |216| 
        BC        L11,ALEQ              ; |216| 
        ; branch occurs ; |216| 
        LDM       SP,A
        ADD       #18,A
        ADD       *SP(6),A
        MVMM      SP,AR2
        STLM      A,AR1
        LD        #39,A
        SUB       *SP(6),A
        STLM      A,BRC
        MAR       *+AR2(#18)
        RPTB      L11-1
        ; loop starts
L10:    
	.line	124
        RSBX      OVM
        LD        *(AR3),16,A           ; |218| 
        SSBX      FRCT
        SSBX      OVM
        NOP
        MPYA      *AR2+                 ; |218| 
        RSBX      OVM
        SFTA      B,-16,A               ; |218| 
        LD        *AR1,16,B             ; |218| 
        SSBX      OVM
        ADD       *(AL),16,B,A          ; |218| 
        SFTA      A,-16,A               ; |218| 
        STL       A,*AR1+
	.line	125
        ; loop ends ; |219| 
L11:    
	.line	119
        MAR       *+AR6(#2)
	.line	132
        LD        *AR6+,A
	.line	134
        RSBX      OVM
        LDM       SP,B
        ADD       #18,B
        RSBX      FRCT
        STL       B,*SP(0)
        ST        #40,*SP(1)            ; |228| 
        LD        *SP(60),B
        STL       B,*SP(2)
        LD        *SP(65),B
        STL       B,*SP(3)
        LD        *SP(66),B
        STL       B,*SP(4)
        CALL      #_Dec_gain            ; |228| 
        ; call occurs [#_Dec_gain] ; |228| 
	.line	140
        SSBX      SXM
        RSBX      OVM
        LD        *(_gain_pitch),A
        STL       A,*(_sharp)
        SUB       #13018,A,A            ; |234| 
        BC        L12,AGEQ              ; |234| 
        ; branch occurs ; |234| 
	.line	142
        LD        #3277,A
        SUB       *(_sharp),A           ; |236| 
        BC        L13,ALEQ              ; |236| 
        ; branch occurs ; |236| 
        ST        #3277,*(_sharp)       ; |236| 
        B         L13                   ; |236| 
        ; branch occurs ; |236| 
L12:    
	.line	141
        ST        #13017,*(_sharp)      ; |235| 
L13:    
        LDM       SP,A
        ADD       #18,A
        STL       A,*SP(59)
	.line	149
        STM       #0,AR1
L14:    
	.line	157
        LDM       AR1,A
        ADD       *(AR7),A
        SSBX      FRCT
        STL       A,*SP(67)
        STM       #_gain_pitch,AR2
        ADD       *(_exc),A
        STLM      A,AR3
        SSBX      OVM
        ST        #1,*SP(0)             ; |251| 
        MPY       *AR3,*AR2,A           ; |251| 
        RSBX      OVM
        STM       #_gain_code,AR2
        MVDK      *SP(59),*(AR3)
        SFTA      A,8                   ; |251| 
        SFTA      A,-8                  ; |251| 
        ORM       #2,*(PMST)
        SSBX      OVM
        ORM       #2,*(PMST)
        NOP
        MAC       *AR2, *AR3+, A, A     ; |251| 
        RSBX      FRCT
        RSBX      OVM
        MVKD      *(AR3),*SP(59)
        CALL      #_L_shl               ; |251| 
        ; call occurs [#_L_shl] ; |251| 
	.line	158
        RSBX      OVM
        SSBX      SXM
        SFTA      A,8                   ; |252| 
        SFTA      A,-8                  ; |252| 
        SSBX      OVM
        ADD       #1,#15,A,B            ; |252| 
        RSBX      OVM
        LD        *SP(67),A
        ADD       *(_exc),A
        STLM      A,AR2
        NOP
        NOP
        STH       B,*AR2                ; |252| 
	.line	159
        MAR       *AR1+
        LDM       AR1,A
        LD        *(AL),A               ; |253| 
        SUB       #40,A,A               ; |253| 
        BC        L14,ALT               ; |253| 
        ; branch occurs ; |253| 
	.line	165
        LDM       AR7,A
        ADD       *(_exc),A
        STL       A,*SP(0)
        LD        *SP(62),A
        RSBX      FRCT
        STL       A,*SP(1)
        ST        #40,*SP(2)            ; |259| 
        LD        *SP(64),A
        STL       A,*SP(3)
        LD        *SP(61),A
        ST        #0,*SP(4)             ; |259| 
        CALL      #_Syn_filt            ; |259| 
        ; call occurs [#_Syn_filt] ; |259| 
        STLM      A,AR1
        NOP
        NOP
        BANZ      L15,*AR1              ; |259| 
        ; branch occurs ; |259| 
	.line	176
        LD        *SP(64),A
        RSBX      FRCT
        STL       A,*SP(0)
        RSBX      OVM
        ST        #10,*SP(1)            ; |270| 
        LD        *SP(62),A
        CALLD     #_Copy                ; |270| 
        ADD       #30,A,A               ; |270| 
        ; call occurs [#_Copy] ; |270| 
        B         L17                   ; |270| 
        ; branch occurs ; |270| 
L15:    
        LD        #234,A
        MVDK      *SP(63),*(AR1)
        STL       A,*SP(59)
L16:    
	.line	171
        ST        #2,*SP(0)             ; |265| 
        RSBX      FRCT
        RSBX      OVM
        LD        *AR1,A
        CALL      #_shr                 ; |265| 
        ; call occurs [#_shr] ; |265| 
        STL       A,*AR1+
        MVDK      *SP(59),*(AR2)
        BANZD     L16,*+AR2(-1)         ; |265| 
        MVKD      *(AR2),*SP(59)
        ; branch occurs ; |265| 
	.line	173
        RSBX      OVM
        LDM       AR7,A
        ADD       *(_exc),A
        STL       A,*SP(0)
        RSBX      FRCT
        LD        *SP(62),A
        STL       A,*SP(1)
        ST        #40,*SP(2)            ; |267| 
        LD        *SP(64),A
        STL       A,*SP(3)
        LD        *SP(61),A
        ST        #1,*SP(4)             ; |267| 
        CALL      #_Syn_filt            ; |267| 
        ; call occurs [#_Syn_filt] ; |267| 
L17:    
	.line	178
        RSBX      OVM
        LD        *SP(61),A
        ADD       #11,A
        STL       A,*SP(61)
	.line	179
        SSBX      SXM
        MAR       *+AR7(#40)
        LD        *SP(62),A
        ADD       #40,A
        STL       A,*SP(62)
        LD        *(AR7),A              ; |273| 
        SUB       #80,A,A               ; |273| 
        BC        L3,ALT                ; |273| 
        ; branch occurs ; |273| 
	.line	186
        LD        *SP(63),A
        STL       A,*SP(0)
        RSBX      FRCT
        ST        #154,*SP(1)           ; |280| 
        CALLD     #_Copy                ; |280| 
        ADD       #80,A,A               ; |280| 
        ; call occurs [#_Copy] ; |280| 
	.line	188
	.line	189
        ANDM      #-833,*(ST1)
        ANDM      #-4,*(PMST)
        FRAME     #68
        POPM      AR7
        POPM      AR6
        POPM      AR1
        RET
        ; return occurs
	.endfunc	283,000018400h,71


;***************************************************************
;* UNDEFINED EXTERNAL REFERENCES                               *
;***************************************************************
	.global	_L_shl
	.global	_shl
	.global	_shr
	.global	_Int_qlpc
	.global	_Dec_lag3
	.global	_Pred_lt_3
	.global	_Decod_ACELP
	.global	_D_lsp
	.global	_Lsp_decw_reset
	.global	_Dec_gain
	.global	_Copy
	.global	_Set_zero
	.global	_Random
	.global	_Syn_filt
	.global	_bad_lsf

;***************************************************************
;* TYPE INFORMATION                                            *
;***************************************************************
	.sym	_Word16, 0, 3, 13, 16
	.sym	_Word32, 0, 5, 13, 32

⌨️ 快捷键说明

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