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

📄 my_convert.asm

📁 dm642通过网络接收烧写文件
💻 ASM
📖 第 1 页 / 共 4 页
字号:
;******************************************************************************
;* TMS320C6x C/C++ Codegen                                          PC v5.1.0 *
;* Date/Time created: Mon Aug 13 17:31:55 2007                                *
;******************************************************************************
	.compiler_opts --endian=little --mem_model:code=far --mem_model:data=far --predefine_memory_model_macros --quiet --silicon_version=6400 

;******************************************************************************
;* GLOBAL FILE PARAMETERS                                                     *
;*                                                                            *
;*   Architecture      : TMS320C64xx                                          *
;*   Optimization      : Enabled at level 3                                   *
;*   Optimizing for    : Speed                                                *
;*                       Based on options: -o3, no -ms                        *
;*   Endian            : Little                                               *
;*   Interrupt Thrshld : Disabled                                             *
;*   Data Access Model : Far                                                  *
;*   Pipelining        : Enabled                                              *
;*   Speculate Loads   : Disabled                                             *
;*   Memory Aliases    : Presume not aliases (optimistic)                     *
;*   Debug Info        : Optimized w/Profiling Info                           *
;*                                                                            *
;******************************************************************************

	.asg	A15, FP
	.asg	B14, DP
	.asg	B15, SP
	.global	$bss


DW$CU	.dwtag  DW_TAG_compile_unit
	.dwattr DW$CU, DW_AT_name("my_convert.c")
	.dwattr DW$CU, DW_AT_producer("TMS320C6x C/C++ Codegen PC v5.1.0 Copyright (c) 1996-2005 Texas Instruments Incorporated")
	.dwattr DW$CU, DW_AT_stmt_list(0x00)
	.dwattr DW$CU, DW_AT_TI_VERSION(0x01)

DW$1	.dwtag  DW_TAG_subprogram, DW_AT_name("DAT_copy"), DW_AT_symbol_name("_DAT_copy")
	.dwattr DW$1, DW_AT_type(*DW$T$19)
	.dwattr DW$1, DW_AT_declaration(0x01)
	.dwattr DW$1, DW_AT_external(0x01)
DW$2	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$3)
DW$3	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$3)
DW$4	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$31)
	.dwendtag DW$1


DW$5	.dwtag  DW_TAG_subprogram, DW_AT_name("DAT_wait"), DW_AT_symbol_name("_DAT_wait")
	.dwattr DW$5, DW_AT_declaration(0x01)
	.dwattr DW$5, DW_AT_external(0x01)
DW$6	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
	.dwendtag DW$5

	.global	_int_mem_temp
_int_mem_temp:	.usect	".user_data_int",720,128
DW$7	.dwtag  DW_TAG_variable, DW_AT_name("int_mem_temp"), DW_AT_symbol_name("_int_mem_temp")
	.dwattr DW$7, DW_AT_location[DW_OP_addr _int_mem_temp]
	.dwattr DW$7, DW_AT_type(*DW$T$29)
	.dwattr DW$7, DW_AT_external(0x01)
;	C:\CCStudio_v3.1\C6000\cgtools\bin\opt6x.exe C:\DOCUME~1\new\LOCALS~1\Temp\TI6362 C:\DOCUME~1\new\LOCALS~1\Temp\TI6364 
	.sect	".text"
	.global	_yuv422to420

DW$8	.dwtag  DW_TAG_subprogram, DW_AT_name("yuv422to420"), DW_AT_symbol_name("_yuv422to420")
	.dwattr DW$8, DW_AT_low_pc(_yuv422to420)
	.dwattr DW$8, DW_AT_high_pc(0x00)
	.dwattr DW$8, DW_AT_begin_file("my_convert.c")
	.dwattr DW$8, DW_AT_begin_line(0x0e)
	.dwattr DW$8, DW_AT_begin_column(0x06)
	.dwattr DW$8, DW_AT_frame_base[DW_OP_breg31 48]
	.dwattr DW$8, DW_AT_skeletal(0x01)
	.dwpsn	"my_convert.c",16,1

;******************************************************************************
;* FUNCTION NAME: _yuv422to420                                                *
;*                                                                            *
;*   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,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,   *
;*                           A15,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 + 44 Save = 44 byte                  *
;******************************************************************************
_yuv422to420:
;** --------------------------------------------------------------------------*
DW$9	.dwtag  DW_TAG_formal_parameter, DW_AT_name("frameIn"), DW_AT_symbol_name("_frameIn")
	.dwattr DW$9, DW_AT_type(*DW$T$24)
	.dwattr DW$9, DW_AT_location[DW_OP_reg4]
DW$10	.dwtag  DW_TAG_formal_parameter, DW_AT_name("frm_out"), DW_AT_symbol_name("_frm_out")
	.dwattr DW$10, DW_AT_type(*DW$T$24)
	.dwattr DW$10, DW_AT_location[DW_OP_reg20]
DW$11	.dwtag  DW_TAG_formal_parameter, DW_AT_name("width"), DW_AT_symbol_name("_width")
	.dwattr DW$11, DW_AT_type(*DW$T$10)
	.dwattr DW$11, DW_AT_location[DW_OP_reg6]
DW$12	.dwtag  DW_TAG_formal_parameter, DW_AT_name("height"), DW_AT_symbol_name("_height")
	.dwattr DW$12, DW_AT_type(*DW$T$10)
	.dwattr DW$12, DW_AT_location[DW_OP_reg22]

           MV      .L1X    B6,A0
||         MVKL    .S1     _int_mem_temp,A3
||         MVKL    .S2     _DAT_copy,B5      ; |30| 

           MVKH    .S1     _int_mem_temp,A3
||         MV      .L1X    SP,A31            ; |16| 
||         STW     .D2T1   A15,*SP--(48)     ; |16| 
||         MVKH    .S2     _DAT_copy,B5      ; |30| 

   [!A0]   BNOP    .S1     L2,1              ; |28| 
||         STDW    .D2T2   B13:B12,*+SP(40)
||         STDW    .D1T1   A11:A10,*-A31(40)
||         MV      .L1X    B6,A10            ; |16| 

           STDW    .D1T1   A13:A12,*-A31(32)
||         STDW    .D2T2   B11:B10,*+SP(32)
||         MV      .L2X    A3,B13
||         MV      .L1X    B6,A13            ; |16| 

           STW     .D1T1   A14,*-A31(24)
||         LDW     .D2T2   *+B4(8),B10       ; |23| 
||         MVK     .S1     0x2d0,A14

           LDW     .D1T1   *+A4(4),A12       ; |18| 
||         LDW     .D2T2   *+B4(4),B11       ; |22| 

           LDW     .D1T1   *+A4(8),A11       ; |19| 
||         STW     .D2T2   B3,*+SP(28)

           ; BRANCHCC OCCURS {L2}            ; |28| 
;** --------------------------------------------------------------------------*

           LDW     .D1T1   *A4,A15
||         CALL    .S2     B5                ; |30| 
||         LDW     .D2T2   *B4,B12

	.dwpsn	"my_convert.c",28,0
           NOP             4
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L1:    
DW$L$_yuv422to420$3$B:
	.dwpsn	"my_convert.c",29,0

           EXTU    .S1     A14,16,16,A6      ; |30| 
||         MV      .L2     B13,B4            ; |30| 
||         MV      .L1     A15,A4            ; |30| 
||         ADDKPC  .S2     RL0,B3,0          ; |30| 

RL0:       ; CALL OCCURS {_DAT_copy}         ; |30| 
DW$L$_yuv422to420$3$E:
;** --------------------------------------------------------------------------*
DW$L$_yuv422to420$4$B:
           MVKL    .S1     _DAT_copy,A3      ; |31| 
           MVKH    .S1     _DAT_copy,A3      ; |31| 
           EXTU    .S1     A14,16,16,A6      ; |31| 
           CALL    .S2X    A3                ; |31| 
           ADDKPC  .S2     RL1,B3,2          ; |31| 
           MV      .L2     B12,B4            ; |31| 
           MV      .L1X    B13,A4            ; |31| 
RL1:       ; CALL OCCURS {_DAT_copy}         ; |31| 
           MVKL    .S2     _DAT_wait,B4      ; |32| 
           MVKH    .S2     _DAT_wait,B4      ; |32| 
           CALL    .S2     B4                ; |32| 
           ADDKPC  .S2     RL2,B3,4          ; |32| 
RL2:       ; CALL OCCURS {_DAT_wait}         ; |32| 
DW$L$_yuv422to420$4$E:
;** --------------------------------------------------------------------------*
DW$L$_yuv422to420$5$B:

           SUB     .L1     A10,1,A0          ; |28| 
||         SUB     .D1     A10,1,A10         ; |28| 
||         ADDK    .S1     720,A15           ; |28| 
||         MVKL    .S2     _DAT_copy,B5      ; |30| 

           MVKH    .S2     _DAT_copy,B5      ; |30| 
|| [ A0]   B       .S1     L1                ; |28| 

   [ A0]   CALL    .S2     B5                ; |30| 
           NOP             3
	.dwpsn	"my_convert.c",33,0
           ADDK    .S2     720,B12           ; |28| 
           ; BRANCHCC OCCURS {L1}            ; |28| 
DW$L$_yuv422to420$5$E:
;** --------------------------------------------------------------------------*
L2:    

           SHR     .S1     A13,1,A0          ; |35| 
||         MVKL    .S2     _DAT_copy,B5      ; |37| 

           MVKL    .S1     _int_mem_temp,A3
||         MV      .L1     A0,A14            ; |37| 
||         MV      .D1     A0,A13            ; |35| 
||         MVKH    .S2     _DAT_copy,B5      ; |37| 

   [!A0]   BNOP    .S2     L4,4              ; |35| 
||         MVKH    .S1     _int_mem_temp,A3

           MV      .L1     A3,A15
||         MVK     .S1     0x168,A10

           ; BRANCHCC OCCURS {L4}            ; |35| 
;** --------------------------------------------------------------------------*
           CALL    .S2     B5                ; |37| 
	.dwpsn	"my_convert.c",35,0
           NOP             4
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L3:    
DW$L$_yuv422to420$8$B:
	.dwpsn	"my_convert.c",36,0

           EXTU    .S1     A10,16,16,A6      ; |37| 
||         MV      .L2X    A15,B4            ; |37| 
||         MV      .L1     A12,A4            ; |37| 
||         ADDKPC  .S2     RL3,B3,0          ; |37| 

RL3:       ; CALL OCCURS {_DAT_copy}         ; |37| 
DW$L$_yuv422to420$8$E:
;** --------------------------------------------------------------------------*
DW$L$_yuv422to420$9$B:
           MVKL    .S1     _DAT_copy,A3      ; |38| 
           MVKH    .S1     _DAT_copy,A3      ; |38| 
           EXTU    .S1     A10,16,16,A6      ; |38| 
           CALL    .S2X    A3                ; |38| 
           ADDKPC  .S2     RL4,B3,2          ; |38| 
           MV      .L2     B11,B4            ; |38| 
           MV      .L1     A15,A4            ; |38| 
RL4:       ; CALL OCCURS {_DAT_copy}         ; |38| 
           MVKL    .S2     _DAT_wait,B4      ; |39| 
           MVKH    .S2     _DAT_wait,B4      ; |39| 
           CALL    .S2     B4                ; |39| 
           ADDKPC  .S2     RL5,B3,4          ; |39| 
RL5:       ; CALL OCCURS {_DAT_wait}         ; |39| 
DW$L$_yuv422to420$9$E:
;** --------------------------------------------------------------------------*
DW$L$_yuv422to420$10$B:

           SUB     .L1     A14,1,A0          ; |35| 
||         SUB     .D1     A14,1,A14         ; |35| 
||         ADDK    .S1     720,A12           ; |35| 
||         MVKL    .S2     _DAT_copy,B5      ; |37| 

           MVKH    .S2     _DAT_copy,B5      ; |37| 
|| [ A0]   B       .S1     L3                ; |35| 

   [ A0]   CALL    .S2     B5                ; |37| 
           NOP             3
	.dwpsn	"my_convert.c",40,0
           ADDK    .S2     360,B11           ; |35| 
           ; BRANCHCC OCCURS {L3}            ; |35| 
DW$L$_yuv422to420$10$E:
;** --------------------------------------------------------------------------*
L4:    

           MV      .L1     A13,A0
||         MVKL    .S1     _int_mem_temp,A10
||         MVKL    .S2     _DAT_copy,B5      ; |44| 

           MVKH    .S1     _int_mem_temp,A10
||         MVKH    .S2     _DAT_copy,B5      ; |44| 

   [!A0]   BNOP    .S2     L6,5              ; |42| 
||         MVK     .S1     0x168,A12

           ; BRANCHCC OCCURS {L6}            ; |42| 
;** --------------------------------------------------------------------------*
           CALL    .S2     B5                ; |44| 

⌨️ 快捷键说明

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