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

📄 utl_algmem_ml0_switch.asm

📁 使用CCS信息DSP编程,适用于6713B的启动程序。
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	.dwpsn	"utl_algmem.c",33,9
;----------------------------------------------------------------------
;  33 | Int totalSizeExt = 0;                                                  
;  34 | Int numRecs, i;                                                        
;----------------------------------------------------------------------
           STW     .D2T2   B4,*+SP(356)      ; |33| 
           NOP             2
	.dwpsn	"utl_algmem.c",35,17
;----------------------------------------------------------------------
;  35 | IALG_Handle algHandle = (IALG_Handle)algHandlePtr;                     
;----------------------------------------------------------------------
           MV      .S2X    A4,B4
           STW     .D2T2   B4,*+SP(368)      ; |35| 
           NOP             2
	.dwpsn	"utl_algmem.c",37,5
;----------------------------------------------------------------------
;  37 | if (UTL_logDebugHandle == NULL) {                                      
;----------------------------------------------------------------------
           LDW     .D2T2   *+DP(_UTL_logDebugHandle),B0 ; |37| 
           NOP             4
   [!B0]   B       .S1     L13               ; |37| 
           NOP             5
           ; BRANCHCC OCCURS {L13}           ; |37| 
;** --------------------------------------------------------------------------*
	.dwpsn	"utl_algmem.c",38,9
;----------------------------------------------------------------------
;  38 | return;                                                                
;----------------------------------------------------------------------
	.dwpsn	"utl_algmem.c",42,5
;----------------------------------------------------------------------
;  42 | numRecs = algHandle->fxns->algFree( algHandle, memTab );               
;----------------------------------------------------------------------
           LDW     .D2T2   *B4,B4            ; |42| 
           LDW     .D2T1   *+SP(368),A4      ; |42| 
           MVKL    .S2     RL0,B3            ; |42| 
           MVKH    .S2     RL0,B3            ; |42| 
           NOP             1
           LDW     .D2T2   *+B4(20),B5       ; |42| 
           ADDAW   .D2     SP,8,B4           ; |42| 
           NOP             3
           CALL    .S2     B5                ; |42| 
           NOP             5
RL0:       ; CALL OCCURS                     ; |42| 
           STW     .D2T1   A4,*+SP(360)      ; |42| 
           NOP             2
	.dwpsn	"utl_algmem.c",43,5
;----------------------------------------------------------------------
;  43 | memTab[0].base = algHandle;                                            
;----------------------------------------------------------------------
           LDW     .D2T2   *+SP(368),B4      ; |43| 
           NOP             4
           STW     .D2T2   B4,*+SP(48)       ; |43| 
           NOP             2
	.dwpsn	"utl_algmem.c",46,5
;----------------------------------------------------------------------
;  46 | if (algName == NULL) {                                                 
;----------------------------------------------------------------------
           LDW     .D2T2   *+SP(24),B0       ; |46| 
           NOP             4
   [ B0]   B       .S1     L6                ; |46| 
           NOP             5
           ; BRANCHCC OCCURS {L6}            ; |46| 
;** --------------------------------------------------------------------------*
	.dwpsn	"utl_algmem.c",47,9
;----------------------------------------------------------------------
;  47 | LOG_printf( UTL_logDebugHandle, "Alg  mem. alloc:" );                  
;----------------------------------------------------------------------
           CALL    .S1     _LOG_printf       ; |47| 
           LDW     .D2T1   *+DP(_UTL_logDebugHandle),A4 ; |47| 
           MVKL    .S1     SL1+0,A3          ; |47| 
           MVKH    .S1     SL1+0,A3          ; |47| 

           STW     .D2T1   A3,*+SP(4)        ; |47| 
||         MVKL    .S2     RL1,B3            ; |47| 

           MVKH    .S2     RL1,B3            ; |47| 
RL1:       ; CALL OCCURS                     ; |47| 
	.dwpsn	"utl_algmem.c",48,5
;----------------------------------------------------------------------
;  49 | else {                                                                 
;----------------------------------------------------------------------
           B       .S1     L7                ; |48| 
           NOP             5
           ; BRANCH OCCURS {L7}              ; |48| 
;** --------------------------------------------------------------------------*
L6:    
	.dwpsn	"utl_algmem.c",50,9
;----------------------------------------------------------------------
;  50 | LOG_printf( UTL_logDebugHandle, "Alg %s mem. alloc:", algName );       
;----------------------------------------------------------------------
           CALL    .S1     _LOG_printf       ; |50| 
           LDW     .D2T1   *+DP(_UTL_logDebugHandle),A4 ; |50| 
           MV      .D2     B0,B4
           MVKL    .S1     SL2+0,A3          ; |50| 

           STW     .D2T2   B4,*+SP(8)        ; |50| 
||         MVKH    .S1     SL2+0,A3          ; |50| 
||         MVKL    .S2     RL2,B3            ; |50| 

           STW     .D2T1   A3,*+SP(4)        ; |50| 
||         MVKH    .S2     RL2,B3            ; |50| 

RL2:       ; CALL OCCURS                     ; |50| 
;** --------------------------------------------------------------------------*
L7:    
	.dwpsn	"utl_algmem.c",52,10
;----------------------------------------------------------------------
;  52 | for (i = 0; i < numRecs; ++i) {                                        
;----------------------------------------------------------------------
           ZERO    .D2     B4                ; |52| 
           STW     .D2T2   B4,*+SP(364)      ; |52| 
           NOP             2
	.dwpsn	"utl_algmem.c",52,17
;----------------------------------------------------------------------
;  53 | #if 1                                                                  
;----------------------------------------------------------------------
           LDW     .D2T2   *+SP(364),B5      ; |52| 
           LDW     .D2T2   *+SP(360),B4      ; |52| 
           NOP             4
           CMPLT   .L2     B5,B4,B0          ; |52| 
   [!B0]   B       .S1     L12               ; |52| 
           NOP             5
           ; BRANCHCC OCCURS {L12}           ; |52| 
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: Software pipelining disabled
;*----------------------------------------------------------------------------*
L8:    
DW$L$_UTL_showAlgMemFunc$6$B:
	.dwpsn	"utl_algmem.c",54,9
;----------------------------------------------------------------------
;  54 | if (ALGRF_memSpace( memTab[i].space ) == ALGRF->INTHEAP) {             
;  55 | #else                                                                  
;  56 | if (i == 0) {                                                          
;  57 | #endif                                                                 
;----------------------------------------------------------------------
           MV      .D2     B5,B4
           SHL     .S2     B4,4,B5           ; |54| 
           ADDAW   .D2     B5,B4,B4          ; |54| 

           CALL    .S1     _ALGRF_memSpace   ; |54| 
||         ADD     .D2     B4,SP,B4          ; |54| 

           LDW     .D2T1   *+B4(40),A4       ; |54| 
           MVKL    .S2     RL3,B3            ; |54| 
           MVKH    .S2     RL3,B3            ; |54| 
           NOP             2
RL3:       ; CALL OCCURS                     ; |54| 
           LDW     .D2T2   *+DP(_ALGRF),B4   ; |54| 
           NOP             4
           LDW     .D2T2   *B4,B4            ; |54| 
           NOP             4
           CMPEQ   .L1X    A4,B4,A1          ; |54| 
   [!A1]   B       .S1     L9                ; |54| 
           NOP             5
           ; BRANCHCC OCCURS {L9}            ; |54| 
DW$L$_UTL_showAlgMemFunc$6$E:
;** --------------------------------------------------------------------------*
DW$L$_UTL_showAlgMemFunc$7$B:
	.dwpsn	"utl_algmem.c",58,13
;----------------------------------------------------------------------
;  58 | LOG_printf( UTL_logDebugHandle,                                        
;  59 |     "  memTab[%d]: size = %d (internal)", i, memTab[i].size );         
;----------------------------------------------------------------------
           LDW     .D2T2   *+SP(364),B5      ; |58| 
           MVKL    .S1     SL3+0,A4          ; |58| 
           MVKH    .S1     SL3+0,A4          ; |58| 
           STW     .D2T1   A4,*+SP(4)        ; |58| 
           LDW     .D2T1   *+DP(_UTL_logDebugHandle),A4 ; |58| 
           SHL     .S1X    B5,4,A5           ; |58| 
           MV      .L1X    B5,A3             ; |58| Define a twin register

           MV      .S2     B5,B4             ; |58| 
||         ADDAW   .D1     A5,A3,A3          ; |58| 

           STW     .D2T2   B4,*+SP(8)        ; |58| 
||         ADD     .S1X    A3,SP,A3          ; |58| 

           LDW     .D1T1   *+A3(32),A3       ; |58| 
           CALL    .S1     _LOG_printf       ; |58| 
           MVKL    .S2     RL4,B3            ; |58| 
           NOP             2
           STW     .D2T1   A3,*+SP(12)       ; |58| 
           MVKH    .S2     RL4,B3            ; |58| 
RL4:       ; CALL OCCURS                     ; |58| 
	.dwpsn	"utl_algmem.c",60,13
;----------------------------------------------------------------------
;  60 | totalSizeInt += memTab[i].size;                                        
;----------------------------------------------------------------------
           LDW     .D2T2   *+SP(364),B4      ; |60| 
           LDW     .D2T2   *+SP(352),B9      ; |60| 
           NOP             3
           SHL     .S2     B4,4,B5           ; |60| 
           ADDAW   .D2     B5,B4,B4          ; |60| 
           ADD     .S2     B4,SP,B5          ; |60| 
           LDW     .D2T2   *+B5(32),B5       ; |60| 
           NOP             4
           ADD     .D2     B5,B9,B4          ; |60| 
           STW     .D2T2   B4,*+SP(352)      ; |60| 
           NOP             2
	.dwpsn	"utl_algmem.c",61,9
;----------------------------------------------------------------------
;  61 | } else {                                                               
;----------------------------------------------------------------------
           B       .S1     L10               ; |61| 
           NOP             5
           ; BRANCH OCCURS {L10}             ; |61| 
DW$L$_UTL_showAlgMemFunc$7$E:
;** --------------------------------------------------------------------------*
L9:    
DW$L$_UTL_showAlgMemFunc$8$B:
	.dwpsn	"utl_algmem.c",62,13
;----------------------------------------------------------------------
;  62 | LOG_printf( UTL_logDebugHandle,                                        
;  63 |     "  memTab[%d]: size = %d (external)", i, memTab[i].size );         
;----------------------------------------------------------------------
           LDW     .D2T2   *+SP(364),B4      ; |62| 
           MVKL    .S1     SL4+0,A4          ; |62| 
           MVKH    .S1     SL4+0,A4          ; |62| 
           STW     .D2T1   A4,*+SP(4)        ; |62| 
           LDW     .D2T1   *+DP(_UTL_logDebugHandle),A4 ; |62| 
           SHL     .S1X    B4,4,A5           ; |62| 
           MV      .L1X    B4,A3             ; |62| Define a twin register

           MV      .S2     B4,B5             ; |62| 
||         ADDAW   .D1     A5,A3,A3          ; |62| 

           STW     .D2T2   B5,*+SP(8)        ; |62| 
||         ADD     .S1X    A3,SP,A3          ; |62| 

           LDW     .D1T1   *+A3(32),A3       ; |62| 
           CALL    .S1     _LOG_printf       ; |62| 
           MVKL    .S2     RL5,B3            ; |62| 
           NOP             2
           STW     .D2T1   A3,*+SP(12)       ; |62| 
           MVKH    .S2     RL5,B3            ; |62| 
RL5:       ; CALL OCCURS                     ; |62| 
	.dwpsn	"utl_algmem.c",64,13
;----------------------------------------------------------------------
;  64 | totalSizeExt += memTab[i].size;                                        
;----------------------------------------------------------------------
           LDW     .D2T2   *+SP(364),B4      ; |64| 
           LDW     .D2T2   *+SP(356),B9      ; |64| 
           NOP             3
           SHL     .S2     B4,4,B5           ; |64| 
           ADDAW   .D2     B5,B4,B4          ; |64| 
           ADD     .S2     B4,SP,B5          ; |64| 
           LDW     .D2T2   *+B5(32),B5       ; |64| 
           NOP             4
           ADD     .D2     B5,B9,B4          ; |64| 
           STW     .D2T2   B4,*+SP(356)      ; |64| 
DW$L$_UTL_showAlgMemFunc$8$E:
;** --------------------------------------------------------------------------*
L10:    
DW$L$_UTL_showAlgMemFunc$9$B:
	.dwpsn	"utl_algmem.c",66,9
;----------------------------------------------------------------------
;  66 | if (boolVerbose) {                                                     
;----------------------------------------------------------------------
           LDW     .D2T2   *+SP(28),B0       ; |66| 
           NOP             4
   [!B0]   B       .S1     L11               ; |66| 
           NOP             5
           ; BRANCHCC OCCURS {L11}           ; |66| 
DW$L$_UTL_showAlgMemFunc$9$E:
;** --------------------------------------------------------------------------*
DW$L$_UTL_showAlgMemFunc$10$B:

⌨️ 快捷键说明

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