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

📄 filt_gen.asm

📁 基于DM642平台的视频缩小放大功能 程序源代码
💻 ASM
📖 第 1 页 / 共 5 页
字号:
L25:    
           CALL    .S2X    A5                ; |134| 
           ADDKPC  .S2     RL104,B3,0        ; |134| 
           MV      .D2     B5,B4             ; |134| 
           NOP             1
           ADD     .D1     A4,A4,A4          ; |134| 

           ADD     .S1     1,A9,A4           ; |134| 
||         STH     .D1T1   A4,*++A3(4)       ; |134| 

RL104:     ; CALL OCCURS                     ; |134| 
           MVKL    .S2     __remi,B8         ; |135| 

           MVKH    .S2     __remi,B8         ; |135| 
||         LDH     .D1T1   *+A8[A7],A5       ; |135| 

           CALL    .S2     B8                ; |135| 
           MV      .S1     A4,A9             ; |134| 
           MV      .D2     B5,B4             ; |135| 
           ADDKPC  .S2     RL105,B3,0        ; |135| 
           ADD     .D1     A5,A5,A4          ; |135| 

           ADD     .S1     1,A7,A4           ; |135| 
||         STH     .D1T1   A4,*+A3(2)        ; |135| 

RL105:     ; CALL OCCURS                     ; |135| 
           SUB     .D1     A0,1,A0           ; |136| 
   [ A0]   BNOP    .S1     L25,2             ; |136| 

   [!A0]   CMPLT   .L2     B7,0,B0           ; |139| 
|| [!A0]   ADD     .L1     4,A3,A3
|| [ A0]   MVKL    .S1     __remi,A5         ; |134| 
||         MV      .D1     A4,A7             ; |135| 

   [ A0]   MVKH    .S1     __remi,A5         ; |134| 
   [ A0]   LDH     .D1T1   *+A8[A9],A4       ; |134| 
           ; BRANCH OCCURS                   ; |136| 
;** --------------------------------------------------------------------------*
L26:    
   [ B0]   B       .S1     L28               ; |139| 
           STH     .D1T1   A17,*A3           ; |137| 

           STH     .D1T1   A17,*+A3(2)       ; |138| 
|| [!B0]   ADD     .D2     4,B7,B4           ; |141| 
|| [ B0]   SUB     .S1X    B6,1,A0           ; |146| 

   [!B0]   SHR     .S2     B4,2,B4           ; |141| 
   [!B0]   MVKL    .S1     __remi,A5         ; |141| 
   [!B0]   MV      .D1X    B4,A0             ; |141| 
           ; BRANCH OCCURS                   ; |139| 
;** --------------------------------------------------------------------------*

           LDH     .D1T1   *+A8[A9],A4       ; |141| 
||         MVKH    .S1     __remi,A5         ; |141| 

           LDH     .D1T1   *A3,A6            ; |141| 
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L27:    
           CALL    .S2X    A5                ; |141| 
           ADDKPC  .S2     RL106,B3,0        ; |141| 
           MV      .D2     B5,B4             ; |141| 
           NOP             1
           ADDAH   .D1     A6,A4,A4          ; |141| 

           ADD     .S1     1,A9,A4           ; |141| 
||         STH     .D1T1   A4,*A3            ; |141| 

RL106:     ; CALL OCCURS                     ; |141| 

           MVKL    .S2     __remi,B8         ; |142| 
||         LDH     .D1T1   *+A3(2),A5        ; |142| 

           MVKH    .S2     __remi,B8         ; |142| 
||         LDH     .D1T1   *+A8[A7],A6       ; |142| 

           CALL    .S2     B8                ; |142| 
           MV      .S1     A4,A9             ; |141| 
           MV      .D2     B5,B4             ; |142| 
           ADDKPC  .S2     RL107,B3,0        ; |142| 
           ADDAH   .D1     A5,A6,A4          ; |142| 

           ADD     .S1     1,A7,A4           ; |142| 
||         STH     .D1T1   A4,*+A3(2)        ; |142| 

RL107:     ; CALL OCCURS                     ; |142| 
           SUB     .D1     A0,1,A0           ; |143| 
   [ A0]   BNOP    .S1     L27,2             ; |143| 

   [ A0]   MVKL    .S1     __remi,A5         ; |141| 
||         MV      .D1     A4,A7             ; |142| 

   [ A0]   MVKH    .S1     __remi,A5         ; |141| 
|| [ A0]   LDH     .D1T1   *+A8[A9],A4       ; |141| 

   [!A0]   SUB     .S1X    B6,1,A0           ; |146| 
|| [ A0]   LDH     .D1T1   *A3,A6            ; |141| 

           ; BRANCH OCCURS                   ; |143| 
;** --------------------------------------------------------------------------*
L28:    
   [ A0]   BNOP    .S1     L24,4             ; |146| 

           SUB     .D2     B6,1,B6           ; |146| 
||         ADD     .D1     4,A3,A3           ; |144| 
|| [ A0]   CMPLT   .L2     B7,8,B0           ; |132| 

           ; BRANCH OCCURS                   ; |146| 
;** --------------------------------------------------------------------------*
           LDH     .D1T1   *+A16(4),A4       ; |147| 
           NOP             4
;** --------------------------------------------------------------------------*
L29:    
           STH     .D1T1   A4,*A3            ; |147| 

           RETNOP  .S2     B31,4             ; |149| 
||         LDH     .D1T1   *+A16(6),A4       ; |148| 

           STH     .D1T1   A4,*+A3(2)        ; |148| 
           ; BRANCH OCCURS                   ; |149| 



	.sect	".text"
	.global	_filt_gen

;******************************************************************************
;* FUNCTION NAME: _filt_gen                                                   *
;*                                                                            *
;*   Regs Modified     : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,   *
;*                           A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,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,   *
;*                           A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,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 + 6804 Auto + 32 Save = 6836 byte             *
;******************************************************************************
_filt_gen:
;** --------------------------------------------------------------------------*
           MVKL    .S2     _bresenham_guide,B5 ; |170| 
           MVKH    .S2     _bresenham_guide,B5 ; |170| 

           ADDK    .S2     -6840,SP          ; |162| 
||         MV      .D1X    SP,A31            ; |162| 

           CALL    .S2     B5                ; |170| 
           STDW    .D1T1   A15:A14,*-A31(8)

           STDW    .D1T1   A13:A12,*-A31(16)
||         STW     .D2T2   B10,*+SP(6840)

           MV      .D1X    B4,A15            ; |162| 
||         STW     .D2T1   A10,*+SP(6816)

           STW     .D2T1   A11,*+SP(6820)
||         MV      .D1X    B6,A13            ; |162| 
||         CMPGT   .L1     A4,0,A14          ; |178| 
||         MV      .S1     A4,A12            ; |162| 
||         MV      .S2X    A8,B10            ; |162| 

           ADDKPC  .S2     RL108,B3,0        ; |170| 
||         MV      .L2     B3,B13
||         STW     .D2T2   B13,*+SP(6812)
||         MV      .D1X    B6,A6             ; |162| 
||         MV      .S1     A6,A11            ; |162| 
||         MV      .L1     A4,A10            ; |162| 

RL108:     ; CALL OCCURS                     ; |170| 
           MVKL    .S1     _unrollx1,A3      ; |171| 
           MVKH    .S1     _unrollx1,A3      ; |171| 
           MVK     .S2     6408,B4           ; |171| 
           CALL    .S2X    A3                ; |171| 
           ADDKPC  .S2     RL109,B3,0        ; |171| 
           MV      .D1     A13,A4            ; |171| 
           ADD     .D2     B4,SP,B4          ; |171| 
           MV      .L2X    A12,B6            ; |171| 
           MVK     .S1     0x4,A6            ; |171| 
RL109:     ; CALL OCCURS                     ; |171| 
           MVKL    .S1     _unrollx2,A3      ; |172| 
           MVKH    .S1     _unrollx2,A3      ; |172| 
           MVK     .S1     6408,A4           ; |172| 
           CALL    .S2X    A3                ; |172| 
           ADDKPC  .S2     RL110,B3,2        ; |172| 
           ADD     .D1X    A4,SP,A4          ; |172| 
           MV      .D2     B10,B4            ; |172| 
RL110:     ; CALL OCCURS                     ; |172| 
           MVKL    .S2     _filter_design,B5 ; |173| 
           MVKH    .S2     _filter_design,B5 ; |173| 
           CALL    .S2     B5                ; |173| 
           MV      .S1     A12,A4            ; |173| 
           MV      .L2X    A15,B4            ; |173| 
           MV      .D1     A13,A6            ; |173| 
           ADD     .D2     8,SP,B6           ; |173| 
           ADDKPC  .S2     RL111,B3,0        ; |173| 
RL111:     ; CALL OCCURS                     ; |173| 
           MVKL    .S1     _filter_normalize,A3 ; |174| 
           MVKH    .S1     _filter_normalize,A3 ; |174| 
           MV      .D1     A12,A4            ; |174| 
           CALL    .S2X    A3                ; |174| 
           ADD     .D2     8,SP,B4           ; |174| 
           ADDKPC  .S2     RL112,B3,3        ; |174| 
RL112:     ; CALL OCCURS                     ; |174| 
           MV      .D1     A14,A0
   [!A0]   BNOP    .S1     L32,3             ; |178| 

   [!A0]   LDW     .D2T1   *+SP(6836),A15    ; |190| 
||         ZERO    .S2     B10

   [!A0]   LDW     .D2T1   *+SP(6824),A12    ; |190| 
           ; BRANCH OCCURS                   ; |178| 
;** --------------------------------------------------------------------------*
;**   BEGIN LOOP L30
;** --------------------------------------------------------------------------*
L30:    
           ADD     .D2     B10,SP,B4
           MVK     .D2     0x4,B5            ; |180| 
           MV      .D1X    B4,A12            ; Define a twin register
           MV      .D1X    B5,A13            ; |180| 
           MVKL    .S2     __mpyd,B6         ; |182| 
           MVKH    .S2     __mpyd,B6         ; |182| 
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L31:    
           CALL    .S2     B6                ; |182| 
           LDDW    .D1T1   *++A12,A5:A4      ; |182| 
           ZERO    .D2     B5                ; |182| 
           MVKH    .S2     0x40d00000,B5     ; |182| 
           ADDKPC  .S2     RL114,B3,0        ; |182| 
           ZERO    .D2     B4                ; |182| 
RL114:     ; CALL OCCURS                     ; |182| 
           MVKL    .S1     __fixdi,A3        ; |182| 
           MVKH    .S1     __fixdi,A3        ; |182| 
           NOP             1
           CALL    .S2X    A3                ; |182| 
           ADDKPC  .S2     RL115,B3,4        ; |182| 
RL115:     ; CALL OCCURS                     ; |182| 
           EXT     .S1     A4,16,16,A4       ; |182| 
           CMPLT   .L1     A4,0,A0           ; |182| 

           SUB     .D1     A13,1,A0          ; |187| 
|| [ A0]   MVK     .L1     0xfffffffd,A3     ; |182| 
|| [!A0]   MVK     .S1     0x4,A3            ; |182| 

   [ A0]   BNOP    .S1     L31,1             ; |187| 
           ADD     .D1     A3,A4,A3
           SHR     .S1     A3,3,A3

   [ A0]   MVKL    .S2     __mpyd,B6         ; |182| 
||         SUB     .S1     A13,1,A13         ; |187| 
||         STH     .D1T1   A3,*A11++         ; |186| 

   [!A0]   SUB     .D1     A10,1,A0          ; |188| 
|| [ A0]   MVKH    .S2     __mpyd,B6         ; |182| 

           ; BRANCH OCCURS                   ; |187| 
;** --------------------------------------------------------------------------*
   [ A0]   BNOP    .S1     L30,4             ; |188| 

           SUB     .D1     A10,1,A10         ; |188| 
||         ADDK    .S2     32,B10            ; |188| 
|| [!A0]   LDW     .D2T1   *+SP(6836),A15    ; |190| 

           ; BRANCH OCCURS                   ; |188| 
;** --------------------------------------------------------------------------*
           LDW     .D2T1   *+SP(6824),A12    ; |190| 
;** --------------------------------------------------------------------------*
L32:    
           LDW     .D2T1   *+SP(6828),A13    ; |190| 
           LDW     .D2T1   *+SP(6816),A10    ; |190| 
           LDW     .D2T1   *+SP(6820),A11    ; |190| 

           LDW     .D2T2   *+SP(6840),B10    ; |190| 
||         MV      .S2     B13,B3            ; |190| 

           RET     .S2     B3                ; |190| 
||         LDW     .D2T1   *+SP(6832),A14    ; |190| 

           LDW     .D2T2   *+SP(6812

⌨️ 快捷键说明

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