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

📄 distancetranformf_l.asm

📁 基于VPM642的距离变换程序
💻 ASM
📖 第 1 页 / 共 3 页
字号:
;*       ||         MIN2    .L2X    B4,A4,B4          ; |230|  ^ 
;*  29              ADD     .D1     4,A28,A28         ; |88| 
;*       ||         MIN2    .L1     A5,A17,A5         ; |131| 
;*       ||         ZERO    .D2     B1                ; |223| 
;*       ||         AND     .S2     B4,B19,B4         ; |231|  ^ 
;*  30              MIN2    .L1     A5,A6,A4          ; |216| 
;*       ||         MV      .D2X    A4,B27            ; |218| Define a twin register
;*       ||         SHRU    .S2     B4,0x8,B2         ; |232|  ^ 
;*  31              SHRU    .S2     B2,0x8,B9         ; |234|  ^ 
;*  32              MIN2    .L2X    A4,B27,B3         ; |220| 
;*  33              ADD     .L2X    B9,A3,B8          ; |235|  ^ 
;*  34              MIN2    .L2     B8,B3,B9          ; |236|  ^ 
;*  35              NOP             1
;*  36              AND     .L2     B9,B20,B8         ; |237|  ^ 
;*  37              SHL     .S2     B8,0x10,B12       ; |238|  ^ 
;*  38              NOP             1
;*  39              ADD     .L2X    B12,A3,B11        ; |240|  ^ 
;*  40              MIN2    .L2     B11,B3,B4         ; |241|  ^ 
;*  41              OR      .L2     B22,B1,B6         ; |227| 
;*       ||         AND     .D2     B4,B19,B4         ; |242|  ^ 
;*  42              OR      .D2     B2,B6,B6          ; |233| 
;*       ||         SHL     .S2     B4,0x8,B4         ; |243|  ^ 
;*  43              OR      .L2     B12,B6,B6         ; |239| 
;*       ||         BDEC    .S2     loop,B23          ; |255| 
;*  44              OR      .L2     B4,B6,B6          ; |244|  ^ 
;*       ||         ADD     .D2     0xffffffff,B0,B0  ; |252| 
;*  45              AND     .S2     B6,B18,B8         ; |245|  ^ 
;*  46              MV      .S1X    B6,A6             ; |244| Define a twin register
;*       ||         SHRU    .S2     B8,0x18,B22       ; |246|  ^ 
;*  47              NOP             1
;*  48      [ B0]   STW     .D2T1   A6,*B25++         ; |253| 
;*                  ; BRANCH OCCURS                   ; |255| 
;*----------------------------------------------------------------------------*
L1:    ; PIPED LOOP PROLOG
;** --------------------------------------------------------------------------*
loop:    ; PIPED LOOP KERNEL

           ADD2    .D1     A7,A26,A7         ; |188| <0,24> 
||         OR      .S1     A29,A19,A19       ; |168| <0,24> 
||         OR      .L1     A16,A17,A17       ; |125| <0,24> the first line finished
||         ADD2    .D2     B7,B21,B7         ; |186| <0,24> 
||         MIN2    .L2X    B4,A4,B4          ; |225| <0,24>  ^ compare

           ADD2    .S1     A19,A3,A19        ; |184| <0,25> 
||         ADD     .D2     4,B24,B24         ; |89| <0,25> 
||         AND     .S2     B4,B20,B22        ; |226| <0,25>  ^ 
||         MIN2    .L1X    A7,B9,A6          ; |213| <0,25> 
||         ADD2    .L2     B17,B21,B17       ; |182| <0,25> 
||         LDNDW   .D1T1   *A27,A23:A22      ; |90| <1,0>  A load, line 1

           SHL     .S2     B22,0x10,B4       ; |228| <0,26>  ^ 
||         OR      .D1     A24,A5,A5         ; |117| <0,26> 
||         ADD2    .S1     A9,A26,A9         ; |180| <0,26> 
||         MIN2    .L1X    A19,B7,A7         ; |193| <0,26> 
||         LDNDW   .D2T2   *B24,B5:B4        ; |89| <1,1>  A load, line 2

           ADD     .D2X    B4,A3,B4          ; |229| <0,27>  ^ 
||         ADD2    .D1     A17,A26,A17       ; |129| <0,27> 
||         ADD2    .S1     A5,A26,A5         ; |127| <0,27> 
||         MIN2    .L1X    A9,B17,A8         ; |191| <0,27> 

           MIN2    .L1     A7,A8,A4          ; |218| <0,28> 
||         MIN2    .L2X    B4,A4,B4          ; |230| <0,28>  ^ 

           ZERO    .D2     B1                ; |223| <0,29> 
||         ADD     .D1     4,A28,A28         ; |88| <0,29> 
||         MIN2    .L1     A5,A17,A5         ; |131| <0,29> 
||         AND     .S2     B4,B19,B4         ; |231| <0,29>  ^ 
||         ZERO    .L2     B7:B6             ; |98| <1,4> 

           MV      .D2X    A4,B27            ; |218| <0,30> Define a twin register
||         SHRU    .S2     B4,0x8,B2         ; |232| <0,30>  ^ 
||         MIN2    .L1     A5,A6,A4          ; |216| <0,30> 
||         ZERO    .L2     B17:B16           ; |96| <1,5> 
||         LDNDW   .D1T1   *A28,A21:A20      ; |88| <1,5>  A load, line 3
||         AND     .S1X    A23,B20,A5        ; |115| <1,5> 

           SHRU    .S2     B2,0x8,B9         ; |234| <0,31>  ^ 
||         SHL     .S1     A5,0x10,A24       ; |116| <1,6> 
||         AND     .D2     B4,B18,B8         ; |149| <1,6> 
||         AND     .D1     A25,A22,A5        ; |103| <1,6> 
||         AND     .L1X    B4,A25,A8         ; |137| <1,6> 
||         AND     .L2X    B5,A25,B26        ; |164| <1,6> 

           MIN2    .L2X    A4,B27,B3         ; |220| <0,32> 
||         ZERO    .L1     A5:A4             ; |93| <1,7> 
||         SHRU    .S2     B26,0x8,B26       ; |165| <1,7> 
||         AND     .D2     B5,B20,B29        ; |157| <1,7> 
||         SHRU    .S1     A5,0x8,A7         ; |104| <1,7> 
||         AND     .D1X    A22,B18,A6        ; |110| <1,7> 

           ADD     .L2X    B9,A3,B8          ; |235| <0,33>  ^ 
||         ZERO    .L1     A17:A16           ; |94| <1,8> 
||         AND     .D2     B5,B19,B27        ; |171| <1,8> 
||         SHRU    .S2     B8,0x8,B28        ; |150| <1,8> 
||         SHRU    .S1     A8,0x8,A31        ; |138| <1,8> 
||         AND     .D1X    A22,B19,A2        ; |107| <1,8> 

           MIN2    .L2     B8,B3,B9          ; |236| <0,34>  ^ 
||         OR      .D1     A7,A4,A4          ; |105| <1,9> 
||         ZERO    .L1     A9:A8             ; |95| <1,9> 
||         AND     .D2     B4,B20,B8         ; |134| <1,9> 
||         SHRU    .S2     B27,0x10,B31      ; |173| <1,9> 
||         SHL     .S1X    B26,0x10,A29      ; |167| <1,9> 

           AND     .D1     A23,A25,A1        ; |120| <1,10> 
||         SHL     .S1X    B29,0x10,A22      ; |160| <1,10> 
||         AND     .L1     A21,A25,A30       ; |209| <1,10> 
||         AND     .D2     B4,B19,B11        ; |143| <1,10> 
||         AND     .L2X    A20,B18,B4        ; |202| <1,10> 
||         SHRU    .S2     B28,0x10,B30      ; |153| <1,10> 

           AND     .L2     B9,B20,B8         ; |237| <0,36>  ^ 
||         OR      .D1X    B8,A8,A8          ; |135| <1,11> 
||         ZERO    .L1     A7:A6             ; |99| <1,11> 
||         AND     .D2X    A20,B19,B4        ; |198| <1,11> 
||         SHRU    .S2     B4,0x8,B10        ; |203| <1,11> 
||         SHRU    .S1     A6,0x18,A20       ; |111| <1,11> 

           SHL     .S2     B8,0x10,B12       ; |238| <0,37>  ^ 
||         OR      .D1     A20,A16,A16       ; |113| <1,12> 
||         ZERO    .L1     A19:A18           ; |97| <1,12> 
||         OR      .D2X    A31,B16,B16       ; |139| <1,12> 
||         OR      .L2     B30,B6,B6         ; |155| <1,12> 
||         SHRU    .S1X    B11,0x10,A0       ; |145| <1,12> 

           ZERO    .L2     B9:B8             ; |101| <1,13> 
||         OR      .D1X    B29,A6,A6         ; |158| <1,13> 
||         OR      .L1     A0,A18,A18        ; |147| <1,13> 
||         SHL     .S1     A31,0x10,A31      ; |140| <1,13> 
||         OR      .D2X    A22,B6,B6         ; |162| <1,13> 
||         SHRU    .S2     B4,0x10,B4        ; |199| <1,13> 

           ADD     .L2X    B12,A3,B11        ; |240| <0,39>  ^ 
||         OR      .D1     A29,A6,A6         ; |169| <1,14> 
||         OR      .S1X    B28,A18,A18       ; |152| <1,14> 
||         OR      .L1     A31,A8,A8         ; |141| <1,14> 
||         OR      .D2     B11,B16,B16       ; |144| <1,14> 
||         ADD2    .S2     B6,B21,B6         ; |187| <1,14> 

           MIN2    .L2     B11,B3,B4         ; |241| <0,40>  ^ 
||         OR      .D1X    B31,A6,A6         ; |174| <1,15> 
||         ADD2    .S1     A18,A3,A18        ; |185| <1,15> 
||         OR      .L1     A2,A4,A4          ; |108| <1,15> 
||         ADD2    .D2     B16,B21,B16       ; |183| <1,15> 
||         OR      .S2     B4,B8,B8          ; |200| <1,15> 

           AND     .D2     B4,B19,B4         ; |242| <0,41>  ^ 
||         OR      .L2     B22,B1,B6         ; |227| <0,41> 
||         ADD2    .D1     A8,A26,A8         ; |181| <1,16> 
||         MIN2    .L1X    A18,B6,A18        ; |194| <1,16> compare
||         OR      .S1     A24,A16,A16       ; |118| <1,16> 
||         OR      .S2     B10,B8,B8         ; |204| <1,16> 

           SHL     .S2     B4,0x8,B4         ; |243| <0,42>  ^ 
||         OR      .D2     B2,B6,B6          ; |233| <0,42> 
||         ADD2    .D1     A6,A26,A6         ; |189| <1,17>  add finished 
||         MIN2    .L1X    A8,B16,A8         ; |192| <1,17> compare
||         ADD2    .S1     A4,A26,A4         ; |128| <1,17> 

           OR      .L2     B12,B6,B6         ; |239| <0,43> 
||         BDEC    .S2     loop,B23          ; |255| <0,43> 
||         AND     .D2     B5,B18,B5         ; |176| <1,18> 
||         ADD2    .D1     A16,A26,A16       ; |130| <1,18> add finished
||         SHL     .S1     A30,0x8,A6        ; |210| <1,18> 
||         MIN2    .L1X    A6,B8,A30         ; |214| <1,18> 

           ADD     .D2     0xffffffff,B0,B0  ; |252| <0,44> 
||         OR      .L2     B4,B6,B6          ; |244| <0,44>  ^ 
||         AND     .D1X    A23,B19,A16       ; |124| <1,19> 
||         SHRU    .S1     A1,0x8,A21        ; |121| <1,19> 
||         AND     .S2X    A21,B20,B4        ; |206| <1,19> 
||         MIN2    .L1     A4,A16,A4         ; |132| <1,19> compare

           AND     .S2     B6,B18,B8         ; |245| <0,45>  ^ 
||         ZERO    .L2     B5:B4             ; |100| <1,20> 
||         ADD     .D1     4,A27,A27         ; |90| <1,20> 
||         SHRU    .S1X    B5,0x8,A8         ; |177| <1,20> 
||         OR      .D2     B4,B9,B9          ; |207| <1,20> 
||         MIN2    .L1     A18,A8,A18        ; |219| <1,20> compare

           MV      .S1X    B6,A6             ; |244| <0,46> Define a twin register
||         SHRU    .S2     B8,0x18,B22       ; |246| <0,46>  ^ 
||         OR      .D1     A21,A17,A17       ; |122| <1,21> 
||         MIN2    .L1     A4,A30,A4         ; |217| <1,21> compare
||         OR      .D2     B30,B17,B17       ; |154| <1,21> 
||         OR      .L2X    A6,B9,B9          ; |211| <1,21>  the third line finished

           OR      .D1     A0,A9,A9          ; |146| <1,22> 
||         MIN2    .L1     A4,A18,A4         ; |221| <1,22> compare
||         OR      .S1X    B29,A19,A19       ; |159| <1,22> 
||         OR      .D2     B22,B4,B4         ; |196| <1,22>  ^ element 18
||         OR      .S2     B26,B7,B7         ; |166| <1,22> 
||         OR      .L2X    A22,B17,B17       ; |161| <1,22> 

   [ B0]   STW     .D2T1   A6,*B25++         ; |253| <0,48> 
||         OR      .D1     A20,A5,A5         ; |112| <1,23> 
||         OR      .S1     A8,A7,A7          ; |178| <1,23> the second line finnished
||         OR      .L1X    B28,A9,A9         ; |151| <1,23> 
||         OR      .S2     B27,B7,B7         ; |172| <1,23> 
||         ADD2    .L2X    B4,A3,B4          ; |224| <1,23>  ^ 

;** --------------------------------------------------------------------------*
L3:    ; PIPED LOOP EPILOG

           ADD2    .D1     A9,A26,A9         ; |180| (E) <1,26> 
||         OR      .S1     A16,A17,A6        ; |125| (E) <1,24> the first line finished
||         ADD2    .D2     B7,B21,B7         ; |186| (E) <1,24> 
||         ADD2    .S2     B17,B21,B17       ; |182| (E) <1,25> 
||         OR      .L1     A29,A19,A8        ; |168| (E) <1,24> 
||         MIN2    .L2X    B4,A4,B4          ; |225| (E) <1,24>  ^ compare

           ADD     .D2     0xffffffff,B0,B0  ; |252| (E) <1,44> 
||         ZERO    .S2     B1                ; |223| (E) <1,29> 
||         ADD2    .D1     A6,A26,A5         ; |129| (E) <1,27> 
||         OR      .S1     A24,A5,A6         ; |117| (E) <1,26> 
||         ADD2    .L1     A8,A3,A8          ; |184| (E) <1,25> 
||         AND     .L2     B4,B20,B22        ; |226| (E) <1,25>  ^ 

           OR      .D2     B22,B1,B4         ; |227| (E) <1,41> 
||         ADD2    .D1     A7,A26,A16        ; |188| (E) <1,24> 
||         ADD2    .S1     A6,A26,A6         ; |127| (E) <1,27> 
||         MIN2    .L1X    A8,B7,A7          ; |193| (E) <1,26> 
||         SHL     .S2     B22,0x10,B5       ; |228| (E) <1,26>  ^ 

           MVC     .S2     B13,CSR           ; interrupts on
||         MIN2    .L1X    A9,B17,A8         ; |191| (E) <1,27> 
||         ADD     .D2X    B5,A3,B5          ; |229| (E) <1,27>  ^ 

           MIN2    .L1     A7,A8,A4          ; |218| (E) <1,28> 
||         MIN2    .L2X    B5,A4,B5          ; |230| (E) <1,28>  ^ 

           MIN2    .L1     A6,A5,A5          ; |131| (E) <1,29> 
||         AND     .D2     B5,B19,B5         ; |231| (E) <1,29>  ^ 

           MV      .D2X    A4,B27            ; |218| (E) <1,30> Define a twin register
||         SHRU    .S2     B5,0x8,B2         ; |232| (E) <1,30>  ^ 
||         MIN2    .L1X    A16,B9,A4         ; |213| (E) <1,25> 

           OR      .D2     B2,B4,B6          ; |233| (E) <1,42> 
||         SHRU    .S2     B2,0x8,B4         ; |234| (E) <1,31>  ^ 
||         MIN2    .L1     A5,A4,A4          ; |216| (E) <1,30> 

           ADD     .D2X    B4,A3,B5          ; |235| (E) <1,33>  ^ 
           MIN2    .L2X    A4,B27,B4         ; |220| (E) <1,32> 
           MIN2    .L2     B5,B4,B5          ; |236| (E) <1,34>  ^ 
           AND     .D2     B5,B20,B5         ; |237| (E) <1,36>  ^ 
           SHL     .S2     B5,0x10,B5        ; |238| (E) <1,37>  ^ 

           OR      .D2     B5,B6,B5          ; |239| (E) <1,43> 
||         ADD     .S2X    B5,A3,B11         ; |240| (E) <1,39>  ^ 

           MIN2    .L2     B11,B4,B4         ; |241| (E) <1,40>  ^ 
           AND     .D2     B4,B19,B4         ; |242| (E) <1,41>  ^ 
           SHL     .S2     B4,0x8,B4         ; |243| (E) <1,42>  ^ 
           OR      .D2     B4,B5,B4          ; |244| (E) <1,44>  ^ 
           NOP             1
           MV      .D1X    B4,A6             ; |244| (E) <1,46> Define a twin register
   [ B0]   STW     .D2T1   A6,*B25++         ; |253| (E) <1,48> 
	.line	251
	.line	250
           LDW     .D2T2   *+SP(8),B3        ; |258| 
           LDW     .D2T2   *+SP(12),B12      ; |258| 
           LDDW    .D2T2   *+SP(16),B11:B10  ; |258| 
           LDW     .D2T2   *++SP(24),B13     ; |258| 
           NOP             1
           RETNOP  .S2     B3,5              ; |258| 
           ; BRANCH OCCURS                   ; |258| 
	.endfunc	258,03c080000h,24


;             .endproc

;******************************************************************************
;* TYPE INFORMATION                                                           *
;******************************************************************************

⌨️ 快捷键说明

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