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

📄 filt_gen.asm

📁 基于DM642平台的视频缩小放大功能 程序源代码
💻 ASM
📖 第 1 页 / 共 5 页
字号:
           MV      .D2X    A4,B4
           CALL    .S2X    A3
           MV      .D2X    A5,B5
           MV      .S1     A14,A5
           MV      .D1     A15,A4
           ADDKPC  .S2     RL45,B3,1
RL45:      ; CALL OCCURS   
           MVKL    .S2     __addd,B6
           MVKH    .S2     __addd,B6
           CALL    .S2     B6
           MVKL    .S2     0x3ffc71de,B5
           MVKL    .S2     0x69ad42c4,B4
           MVKH    .S2     0x3ffc71de,B5
           MVKH    .S2     0x69ad42c4,B4
           ADDKPC  .S2     RL46,B3,0
RL46:      ; CALL OCCURS   
           MV      .D2X    A4,B10
           MV      .D2X    A5,B11
           MVKL    .S1     __cmpd,A3
           MVKH    .S1     __cmpd,A3
;** --------------------------------------------------------------------------*
L4:    
           ZERO    .D2     B5
           CALL    .S2X    A3
           MVKH    .S2     0x3ff00000,B5
           ADDKPC  .S2     RL47,B3,0
           MV      .D1     A11,A4
           MV      .S1     A10,A5
           ZERO    .D2     B4
RL47:      ; CALL OCCURS   
           LDW     .D2T1   *+SP(40),A0
           NOP             4

           CMPLT   .L1     A4,0,A0
|| [!A0]   ZERO    .L2     B11:B10

   [!A0]   BNOP    .S1     L5,2

   [!A0]   ADD     .D1     1,A12,A12         ; |52| 
|| [ A0]   MVKL    .S1     __mpyd,A3         ; |46| 

   [!A0]   CMPLT   .L1     A12,3,A0          ; |52| 
|| [ A0]   MVKH    .S1     __mpyd,A3         ; |46| 

           NOP             1
           ; BRANCH OCCURS  
;** --------------------------------------------------------------------------*
           CALL    .S2X    A3                ; |46| 
           MVKL    .S2     0x3ff2aacd,B5     ; |46| 
           MVKL    .S2     0x9e83e426,B4     ; |46| 
           MVKH    .S2     0x3ff2aacd,B5     ; |46| 
           MVKH    .S2     0x9e83e426,B4     ; |46| 

           ADDKPC  .S2     RL70,B3,0         ; |46| 
||         MV      .D1     A11,A4            ; |46| 
||         MV      .S1     A10,A5            ; |46| 

RL70:      ; CALL OCCURS                     ; |46| 
           MVKL    .S1     __mpyd,A3         ; |46| 
           MVKH    .S1     __mpyd,A3         ; |46| 
           MV      .D2X    A10,B5            ; |46| 
           CALL    .S2X    A3                ; |46| 
           ADDKPC  .S2     RL71,B3,3         ; |46| 
           MV      .D2X    A11,B4            ; |46| 
RL71:      ; CALL OCCURS                     ; |46| 
           MVKL    .S2     __mpyd,B6         ; |46| 
           MVKH    .S2     __mpyd,B6         ; |46| 
           CALL    .S2     B6                ; |46| 
           MV      .D2X    A10,B5            ; |46| 
           MV      .D2X    A11,B4            ; |46| 
           ADDKPC  .S2     RL72,B3,2         ; |46| 
RL72:      ; CALL OCCURS                     ; |46| 
           MVKL    .S1     __addd,A3         ; |46| 
           MVKH    .S1     __addd,A3         ; |46| 
           MV      .D1     A5,A14            ; |46| 
           CALL    .S2X    A3                ; |46| 
           MV      .D2X    A10,B5            ; |46| 
           MV      .L1     A4,A15            ; |46| 
           MV      .D2X    A11,B4            ; |46| 
           MV      .S1     A10,A5            ; |46| 

           ADDKPC  .S2     RL73,B3,0         ; |46| 
||         MV      .D1     A11,A4            ; |46| 

RL73:      ; CALL OCCURS                     ; |46| 
           MVKL    .S1     __mpyd,A3         ; |46| 
           MVKH    .S1     __mpyd,A3         ; |46| 
           MV      .D2X    A10,B5            ; |46| 
           CALL    .S2X    A3                ; |46| 
           MV      .D2X    A11,B4            ; |46| 
           ADDKPC  .S2     RL74,B3,3         ; |46| 
RL74:      ; CALL OCCURS                     ; |46| 
           MVKL    .S2     __subd,B6         ; |46| 
           MVKH    .S2     __subd,B6         ; |46| 
           CALL    .S2     B6                ; |46| 
           MV      .D2X    A4,B4             ; |46| 
           MV      .D2X    A5,B5             ; |46| 
           MV      .S1     A14,A5            ; |46| 
           MV      .D1     A15,A4            ; |46| 
           ADDKPC  .S2     RL75,B3,0         ; |46| 
RL75:      ; CALL OCCURS                     ; |46| 
           MVKL    .S1     __addd,A3         ; |46| 
           MVKH    .S1     __addd,A3         ; |46| 
           ZERO    .L2     B5:B4             ; |46| 
           CALL    .S2X    A3                ; |46| 
           ADDKPC  .S2     RL76,B3,4         ; |46| 
RL76:      ; CALL OCCURS                     ; |46| 
           MVKL    .S1     __addd,A3         ; |46| 
           MVKH    .S1     __addd,A3         ; |46| 
           MVKL    .S2     0x3fec71de,B5     ; |46| 
           CALL    .S2X    A3                ; |46| 
           MVKL    .S2     0x69ad42c4,B4     ; |46| 
           MVKH    .S2     0x3fec71de,B5     ; |46| 
           MVKH    .S2     0x69ad42c4,B4     ; |46| 
           ADDKPC  .S2     RL77,B3,1         ; |46| 
RL77:      ; CALL OCCURS                     ; |46| 
           MV      .D2X    A4,B10            ; |46| 
           MV      .D2X    A5,B11            ; |46| 
           ADD     .D1     1,A12,A12         ; |52| 
           CMPLT   .L1     A12,3,A0          ; |52| 
;** --------------------------------------------------------------------------*
L5:    
   [ A0]   B       .S1     L2                ; |52| 

           STDW    .D2T2   B11:B10,*B12++    ; |51| 
|| [ A0]   EXT     .S1     A12,16,16,A3      ; |32| 

   [!A0]   LDW     .D2T1   *+SP(8),A4
           NOP             3
           ; BRANCH OCCURS                   ; |52| 
;** --------------------------------------------------------------------------*
           NOP             1
           LDH     .D1T1   *A4++,A3          ; |53| 
           STW     .D2T1   A4,*+SP(8)        ; |53| 
           LDW     .D2T2   *+SP(12),B4
           NOP             1
           LDW     .D2T1   *+SP(4),A5
           LDW     .D2T1   *+SP(20),A6
           LDW     .D2T1   *+SP(24),A4
           SUB     .D1X    B4,1,A0           ; |54| 
   [ A0]   BNOP    .S1     L1,1              ; |54| 
           SUB     .D2     B4,1,B4           ; |54| 

           ADD     .D1     A5,A6,A4          ; |54| 
||         STW     .D2T2   B4,*+SP(12)       ; |53| 
||         ADD     .S1     A3,A4,A3          ; |53| 

           STW     .D2T1   A4,*+SP(20)       ; |53| 
           STW     .D2T1   A3,*+SP(24)       ; |53| 
           ; BRANCH OCCURS                   ; |54| 
;** --------------------------------------------------------------------------*
           LDW     .D2T2   *+SP(68),B3       ; |55| 
;** --------------------------------------------------------------------------*
L6:    
           MV      .D1X    SP,A31            ; |55| 
           LDDW    .D1T1   *+A31(56),A13:A12 ; |55| 
           LDDW    .D1T1   *+A31(48),A11:A10 ; |55| 
           LDDW    .D2T2   *+SP(72),B11:B10  ; |55| 

           RET     .S2     B3                ; |55| 
||         LDW     .D1T1   *+A31(64),A14     ; |55| 
||         LDDW    .D2T2   *+SP(80),B13:B12  ; |55| 

           LDW     .D2T1   *++SP(88),A15     ; |55| 
           NOP             4
           ; BRANCH OCCURS                   ; |55| 



	.sect	".text"
	.global	_filter_normalize

;******************************************************************************
;* FUNCTION NAME: _filter_normalize                                           *
;*                                                                            *
;*   Regs Modified     : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,B0,*
;*                           B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,SP,   *
;*                           A16,A17,A18,A19,A20,A21,A22,A23,A24,A25,A26,A27, *
;*                           A28,A29,A30,A31,B16,B17,B18,B19,B20,B21,B22,B23, *
;*                           B24,B25,B26,B27,B28,B29,B30,B31                  *
;*   Regs Used         : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,B0,*
;*                           B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12,B13,SP,   *
;*                           A16,A17,A18,A19,A20,A21,A22,A23,A24,A25,A26,A27, *
;*                           A28,A29,A30,A31,B16,B17,B18,B19,B20,B21,B22,B23, *
;*                           B24,B25,B26,B27,B28,B29,B30,B31                  *
;*   Local Frame Size  : 0 Args + 0 Auto + 36 Save = 36 byte                  *
;******************************************************************************
_filter_normalize:
;** --------------------------------------------------------------------------*
           CMPGT   .L1     A4,0,A0           ; |61| 
   [!A0]   B       .S1     L10               ; |61| 

           STW     .D2T1   A13,*SP--(40)     ; |58| 
||         MV      .D1X    SP,A31            ; |58| 

           STW     .D1T1   A14,*-A31(20)
||         STDW    .D2T2   B13:B12,*+SP(32)

           MV      .S1X    B3,A14
||         STDW    .D2T2   B11:B10,*+SP(24)
||         STW     .D1T1   A12,*-A31(24)

           MV      .D1     A4,A11            ; |58| 
||         STDW    .D2T1   A11:A10,*+SP(8)
||         MV      .S1X    B4,A12            ; |58| 
||         ZERO    .S2     B13

   [!A0]   LDDW    .D2T1   *+SP(8),A11:A10   ; |68| 
|| [!A0]   MV      .D1X    SP,A31            ; |68| 

           ; BRANCH OCCURS                   ; |61| 
;** --------------------------------------------------------------------------*
;**   BEGIN LOOP L7
;** --------------------------------------------------------------------------*
L7:    

           ADD     .D2X    B13,A12,B12
||         MVK     .D1     0x4,A10           ; |64| 
||         ZERO    .L2     B11:B10           ; |63| 

           MVKL    .S1     __addd,A3         ; |64| 
           MVKH    .S1     __addd,A3         ; |64| 
           NOP             1
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L8:    
           CALL    .S2X    A3                ; |64| 
           LDDW    .D2T2   *B12++,B5:B4      ; |64| 
           MV      .D1X    B10,A4            ; |64| 
           ADDKPC  .S2     RL78,B3,1         ; |64| 
           MV      .D1X    B11,A5            ; |64| 
RL78:      ; CALL OCCURS                     ; |64| 
           SUB     .D1     A10,1,A0          ; |64| 
   [ A0]   B       .S1     L8                ; |64| 
           MV      .D2X    A5,B11            ; |64| 

   [ A0]   MVKL    .S1     __addd,A3         ; |64| 
||         MV      .D2X    A4,B10            ; |64| 
||         SUB     .D1     A10,1,A10         ; |64| 

   [ A0]   MVKH    .S1     __addd,A3         ; |64| 
   [!A0]   MVKL    .S1     __cmpd,A3         ; |65| 
   [!A0]   MVKH    .S1     __cmpd,A3         ; |65| 
           ; BRANCH OCCURS                   ; |64| 
;** --------------------------------------------------------------------------*
           ZERO    .L2     B5:B4             ; |65| 
           CALL    .S2X    A3                ; |65| 
           ADDKPC  .S2     RL79,B3,4         ; |65| 
RL79:      ; CALL OCCURS                     ; |65| 
           CMPLT   .L1     A4,0,A0           ; |65| 
   [!A0]   BNOP    .S1     L9,2              ; |65| 

   [ A0]   MVKL    .S1     __negd,A3         ; |65| 
|| [!A0]   ADD     .D1X    B13,A12,A10
|| [!A0]   MVK     .L1     0x4,A13           ; |66| 
|| [!A0]   MVKL    .S2     __divd,B6         ; |66| 

   [ A0]   MVKH    .S1     __negd,A3         ; |65| 
|| [!A0]   MVKH    .S2     __divd,B6         ; |66| 

           NOP             1
           ; BRANCH OCCURS                   ; |65| 
;** --------------------------------------------------------------------------*
           CALL    .S2X    A3                ; |65| 
           MV      .D1X    B10,A4            ; |65| 
           ADDKPC  .S2     RL80,B3,2         ; |65| 
           MV      .D1X    B11,A5            ; |65| 
RL80:      ; CALL OCCURS                     ; |65| 
           MV      .D2X    A4,B10            ; |65| 
           MV      .D2X    A5,B11            ; |65| 

           MVK     .S1     0x4,A13           ; |66| 
||         ADD     .D1X    B13,A12,A10

           MVKL    .S2     __divd,B6         ; |66| 
           MVKH    .S2     __divd,B6         ; |66| 
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L9:    
           CALL    .S2     B6                ; |66| 
           LDDW    .D1T1   *A10,A5:A4        ; |66| 
           ADDKPC  .S2     RL81,B3,1         ; |66| 
           MV      .D2     B11,B5            ; |66| 
           MV      .L2     B10,B4            ; |66| 
RL81:      ; CALL OCCURS                     ; |66| 

⌨️ 快捷键说明

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