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

📄 celljpegenc_ti.asm

📁 实现于SEED VPM642 V1.2平台的jpeg loopback
💻 ASM
📖 第 1 页 / 共 4 页
字号:
;*                                                                            *
;*   Regs Modified     : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,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,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 + 0 Auto + 16 Save = 16 byte                  *
;******************************************************************************
_JPEGENC_cellExecute:
;** --------------------------------------------------------------------------*
DW$28	.dwtag  DW_TAG_formal_parameter, DW_AT_name("handle"), DW_AT_symbol_name("_handle")
	.dwattr DW$28, DW_AT_type(*DW$T$78)
	.dwattr DW$28, DW_AT_location[DW_OP_reg4]
DW$29	.dwtag  DW_TAG_formal_parameter, DW_AT_name("arg"), DW_AT_symbol_name("_arg")
	.dwattr DW$29, DW_AT_type(*DW$T$83)
	.dwattr DW$29, DW_AT_location[DW_OP_reg20]
           STW     .D2T2   B10,*SP--(16)     ; |56| 

           MV      .D1     A4,A10            ; |56| 
||         STDW    .D2T1   A11:A10,*+SP(8)   ; |56| 

           LDW     .D1T1   *+A10(40),A3      ; |58| 
           NOP             2
           STW     .D2T2   B13,*+SP(4)       ; |56| 
           MV      .L2     B3,B13            ; |56| 
           LDW     .D1T1   *A3,A5            ; |58| 
           MVKL    .S1     _UTL_stsStartFunc,A3
           MVKH    .S1     _UTL_stsStartFunc,A3
           MVKL    .S2     _utlstsExeTimeChJpegEnc,B10
           CALL    .S2X    A3
           LDW     .D1T1   *A5,A11           ; |58| 
           MVKH    .S2     _utlstsExeTimeChJpegEnc,B10
           ADDKPC  .S2     RL3,B3,1
           MV      .D1X    B10,A4
RL3:       ; CALL OCCURS   
;** --------------------------------------------------------------------------*
           MVKL    .S2     _ALGRF_activate,B4 ; |63| 
           MVKH    .S2     _ALGRF_activate,B4 ; |63| 
           CALL    .S2     B4                ; |63| 
           LDW     .D1T1   *+A10(24),A4      ; |63| 
           ADDKPC  .S2     RL4,B3,3          ; |63| 
RL4:       ; CALL OCCURS                     ; |63| 
           LDW     .D1T2   *+A10(16),B4      ; |66| 
           LDW     .D1T2   *+A10(32),B5      ; |66| 
           NOP             1
           LDW     .D1T1   *+A11(4),A6       ; |66| 
           LDW     .D1T1   *+A10(24),A4      ; |66| 
           LDW     .D2T2   *+B4(40),B6       ; |66| 
           LDW     .D2T2   *B5,B5            ; |66| 
           NOP             3
           CALL    .S2     B6                ; |66| 
           LDW     .D2T2   *B5,B4            ; |66| 
           ADDKPC  .S2     RL5,B3,3          ; |66| 
RL5:       ; CALL OCCURS                     ; |66| 
           LDW     .D1T1   *A11,A5           ; |73| 
           NOP             1
           MVKL    .S1     _ALGRF_deactivate,A3 ; |76| 
           MVKH    .S1     _ALGRF_deactivate,A3 ; |76| 
           NOP             1

           STW     .D1T1   A4,*A5            ; |73| 
||         CALL    .S2X    A3                ; |76| 

           LDW     .D1T1   *+A10(24),A4      ; |76| 
           ADDKPC  .S2     RL6,B3,3          ; |76| 
RL6:       ; CALL OCCURS                     ; |76| 
           MVKL    .S1     _UTL_stsStopFunc,A3
           MVKH    .S1     _UTL_stsStopFunc,A3
           MV      .D1X    B10,A4
           CALL    .S2X    A3
           ADDKPC  .S2     RL7,B3,4
RL7:       ; CALL OCCURS   

           LDW     .D2T2   *+SP(4),B13       ; |81| 
||         MV      .S2     B13,B3            ; |81| 

           LDDW    .D2T1   *+SP(8),A11:A10   ; |81| 
||         RET     .S2     B3                ; |81| 

           LDW     .D2T2   *++SP(16),B10     ; |81| 
           NOP             3
	.dwpsn	"celljpegenc_ti.c",81,1
           MVK     .D1     0x1,A4            ; |80| 
           ; BRANCH OCCURS {B3}              ; |81| 
	.dwattr DW$27, DW_AT_end_file("celljpegenc_ti.c")
	.dwattr DW$27, DW_AT_end_line(0x51)
	.dwattr DW$27, DW_AT_end_column(0x01)
	.dwendtag DW$27

;******************************************************************************
;* UNDEFINED EXTERNAL REFERENCES                                              *
;******************************************************************************
	.global	_ALGRF_activate
	.global	_ALGRF_deactivate
	.global	_UTL_stsStartFunc
	.global	_UTL_stsStopFunc
	.global	_DMAN_addAlg
	.global	_DMAN_removeAlg
	.global	_JPEGENC_TI_control
	.global	_JPEGENC_IDMA2
	.global	_utlstsExeTimeChJpegEnc

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

DW$T$127	.dwtag  DW_TAG_subroutine_type
	.dwattr DW$T$127, DW_AT_language(DW_LANG_C)
DW$30	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$126)
	.dwendtag DW$T$127

DW$T$76	.dwtag  DW_TAG_typedef, DW_AT_name("Bool"), DW_AT_type(*DW$T$75)
	.dwattr DW$T$76, DW_AT_language(DW_LANG_C)

DW$T$79	.dwtag  DW_TAG_subroutine_type, DW_AT_type(*DW$T$76)
	.dwattr DW$T$79, DW_AT_language(DW_LANG_C)
DW$31	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$78)
	.dwendtag DW$T$79


DW$T$84	.dwtag  DW_TAG_subroutine_type, DW_AT_type(*DW$T$76)
	.dwattr DW$T$84, DW_AT_language(DW_LANG_C)
DW$32	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$78)
DW$33	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$83)
	.dwendtag DW$T$84


DW$T$131	.dwtag  DW_TAG_subroutine_type, DW_AT_type(*DW$T$76)
	.dwattr DW$T$131, DW_AT_language(DW_LANG_C)
DW$34	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$30)
DW$35	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$130)
	.dwendtag DW$T$131

DW$T$10	.dwtag  DW_TAG_base_type, DW_AT_name("int")
	.dwattr DW$T$10, DW_AT_encoding(DW_ATE_signed)
	.dwattr DW$T$10, DW_AT_byte_size(0x04)

DW$T$81	.dwtag  DW_TAG_subroutine_type, DW_AT_type(*DW$T$20)
	.dwattr DW$T$81, DW_AT_language(DW_LANG_C)
DW$36	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$78)
DW$37	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$42)
DW$38	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$44)
	.dwendtag DW$T$81

DW$T$83	.dwtag  DW_TAG_typedef, DW_AT_name("Arg"), DW_AT_type(*DW$T$20)
	.dwattr DW$T$83, DW_AT_language(DW_LANG_C)

DW$T$138	.dwtag  DW_TAG_subroutine_type, DW_AT_type(*DW$T$10)
	.dwattr DW$T$138, DW_AT_language(DW_LANG_C)
DW$T$42	.dwtag  DW_TAG_typedef, DW_AT_name("IALG_Cmd"), DW_AT_type(*DW$T$11)
	.dwattr DW$T$42, DW_AT_language(DW_LANG_C)
DW$T$63	.dwtag  DW_TAG_typedef, DW_AT_name("LgUns"), DW_AT_type(*DW$T$11)
	.dwattr DW$T$63, DW_AT_language(DW_LANG_C)

DW$T$149	.dwtag  DW_TAG_subroutine_type, DW_AT_type(*DW$T$63)
	.dwattr DW$T$149, DW_AT_language(DW_LANG_C)
DW$39	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$148)
	.dwendtag DW$T$149

DW$T$44	.dwtag  DW_TAG_pointer_type, DW_AT_type(*DW$T$43)
	.dwattr DW$T$44, DW_AT_address_class(0x20)
DW$T$30	.dwtag  DW_TAG_typedef, DW_AT_name("IALG_Handle"), DW_AT_type(*DW$T$29)
	.dwattr DW$T$30, DW_AT_language(DW_LANG_C)
DW$T$126	.dwtag  DW_TAG_typedef, DW_AT_name("ALGRF_Handle"), DW_AT_type(*DW$T$30)
	.dwattr DW$T$126, DW_AT_language(DW_LANG_C)
DW$T$147	.dwtag  DW_TAG_typedef, DW_AT_name("UTLSTS_Obj"), DW_AT_type(*DW$T$64)
	.dwattr DW$T$147, DW_AT_language(DW_LANG_C)
DW$T$148	.dwtag  DW_TAG_pointer_type, DW_AT_type(*DW$T$147)
	.dwattr DW$T$148, DW_AT_address_class(0x20)
DW$T$129	.dwtag  DW_TAG_typedef, DW_AT_name("IDMA2_Fxns"), DW_AT_type(*DW$T$74)
	.dwattr DW$T$129, DW_AT_language(DW_LANG_C)
DW$T$130	.dwtag  DW_TAG_pointer_type, DW_AT_type(*DW$T$129)
	.dwattr DW$T$130, DW_AT_address_class(0x20)
DW$T$94	.dwtag  DW_TAG_typedef, DW_AT_name("ICELL_Fxns"), DW_AT_type(*DW$T$86)
	.dwattr DW$T$94, DW_AT_language(DW_LANG_C)
DW$T$78	.dwtag  DW_TAG_typedef, DW_AT_name("ICELL_Handle"), DW_AT_type(*DW$T$77)
	.dwattr DW$T$78, DW_AT_language(DW_LANG_C)
DW$T$75	.dwtag  DW_TAG_typedef, DW_AT_name("MdUns"), DW_AT_type(*DW$T$9)
	.dwattr DW$T$75, DW_AT_language(DW_LANG_C)
DW$T$20	.dwtag  DW_TAG_typedef, DW_AT_name("Int"), DW_AT_type(*DW$T$10)
	.dwattr DW$T$20, DW_AT_language(DW_LANG_C)
DW$T$11	.dwtag  DW_TAG_base_type, DW_AT_name("unsigned int")
	.dwattr DW$T$11, DW_AT_encoding(DW_ATE_unsigned)
	.dwattr DW$T$11, DW_AT_byte_size(0x04)
DW$T$43	.dwtag  DW_TAG_typedef, DW_AT_name("IALG_Status"), DW_AT_type(*DW$T$28)
	.dwattr DW$T$43, DW_AT_language(DW_LANG_C)
DW$T$29	.dwtag  DW_TAG_pointer_type, DW_AT_type(*DW$T$58)
	.dwattr DW$T$29, DW_AT_address_class(0x20)

DW$T$64	.dwtag  DW_TAG_structure_type
	.dwattr DW$T$64, DW_AT_name("_UTLSTS_Obj")
	.dwattr DW$T$64, DW_AT_byte_size(0x0c)
DW$40	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$62)
	.dwattr DW$40, DW_AT_name("sts"), DW_AT_symbol_name("_sts")
	.dwattr DW$40, DW_AT_data_member_location[DW_OP_plus_uconst 0x0]
	.dwattr DW$40, DW_AT_accessibility(DW_ACCESS_public)
DW$41	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$63)
	.dwattr DW$41, DW_AT_name("lastTime"), DW_AT_symbol_name("_lastTime")
	.dwattr DW$41, DW_AT_data_member_location[DW_OP_plus_uconst 0x4]
	.dwattr DW$41, DW_AT_accessibility(DW_ACCESS_public)
DW$42	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$63)
	.dwattr DW$42, DW_AT_name("count"), DW_AT_symbol_name("_count")
	.dwattr DW$42, DW_AT_data_member_location[DW_OP_plus_uconst 0x8]
	.dwattr DW$42, DW_AT_accessibility(DW_ACCESS_public)
	.dwendtag DW$T$64


DW$T$74	.dwtag  DW_TAG_structure_type
	.dwattr DW$T$74, DW_AT_name("IDMA2_Fxns")
	.dwattr DW$T$74, DW_AT_byte_size(0x14)
DW$43	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$3)
	.dwattr DW$43, DW_AT_name("implementationId"), DW_AT_symbol_name("_implementationId")
	.dwattr DW$43, DW_AT_data_member_location[DW_OP_plus_uconst 0x0]
	.dwattr DW$43, DW_AT_accessibility(DW_ACCESS_public)
DW$44	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$71)
	.dwattr DW$44, DW_AT_name("dmaChangeChannels"), DW_AT_symbol_name("_dmaChangeChannels")
	.dwattr DW$44, DW_AT_data_member_location[DW_OP_plus_uconst 0x4]
	.dwattr DW$44, DW_AT_accessibility(DW_ACCESS_public)
DW$45	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$56)
	.dwattr DW$45, DW_AT_name("dmaGetChannelCnt"), DW_AT_symbol_name("_dmaGetChannelCnt")
	.dwattr DW$45, DW_AT_data_member_location[DW_OP_plus_uconst 0x8]
	.dwattr DW$45, DW_AT_accessibility(DW_ACCESS_public)
DW$46	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$73)
	.dwattr DW$46, DW_AT_name("dmaGetChannels"), DW_AT_symbol_name("_dmaGetChannels")
	.dwattr DW$46, DW_AT_data_member_location[DW_OP_plus_uconst 0xc]
	.dwattr DW$46, DW_AT_accessibility(DW_ACCESS_public)
DW$47	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$73)
	.dwattr DW$47, DW_AT_name("dmaInit"), DW_AT_symbol_name("_dmaInit")
	.dwattr DW$47, DW_AT_data_member_location[DW_OP_plus_uconst 0x10]
	.dwattr DW$47, DW_AT_accessibility(DW_ACCESS_public)
	.dwendtag DW$T$74


DW$T$86	.dwtag  DW_TAG_structure_type
	.dwattr DW$T$86, DW_AT_name("ICELL_Fxns")
	.dwattr DW$T$86, DW_AT_byte_size(0x10)
DW$48	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$80)
	.dwattr DW$48, DW_AT_name("cellClose"), DW_AT_symbol_name("_cellClose")
	.dwattr DW$48, DW_AT_data_member_location[DW_OP_plus_uconst 0x0]
	.dwattr DW$48, DW_AT_accessibility(DW_ACCESS_public)
DW$49	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$82)
	.dwattr DW$49, DW_AT_name("cellControl"), DW_AT_symbol_name("_cellControl")
	.dwattr DW$49, DW_AT_data_member_location[DW_OP_plus_uconst 0x4]
	.dwattr DW$49, DW_AT_accessibility(DW_ACCESS_public)
DW$50	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$85)
	.dwattr DW$50, DW_AT_name("cellExecute"), DW_AT_symbol_name("_cellExecute")
	.dwattr DW$50, DW_AT_data_member_location[DW_OP_plus_uconst 0x8]
	.dwattr DW$50, DW_AT_accessibility(DW_ACCESS_public)
DW$51	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$80)
	.dwattr DW$51, DW_AT_name("cellOpen"), DW_AT_symbol_name("_cellOpen")
	.dwattr DW$51, DW_AT_data_member_location[DW_OP_plus_uconst 0xc]
	.dwattr DW$51, DW_AT_accessibility(DW_ACCESS_public)
	.dwendtag DW$T$86

DW$T$77	.dwtag  DW_TAG_pointer_type, DW_AT_type(*DW$T$102)
	.dwattr DW$T$77, DW_AT_address_class(0x20)
DW$T$3	.dwtag  DW_TAG_pointer_type
	.dwattr DW$T$3, DW_AT_address_class(0x20)
DW$T$71	.dwtag  DW_TAG_pointer_type, DW_AT_type(*DW$T$70)
	.dwattr DW$T$71, DW_AT_address_class(0x20)
DW$T$9	.dwtag  DW_TAG_base_type, DW_AT_name("unsigned short")
	.dwattr DW$T$9, DW_AT_encoding(DW_ATE_unsigned)
	.dwattr DW$T$9, DW_AT_byte_size(0x02)
DW$T$80	.dwtag  DW_TAG_pointer_type, DW_AT_type(*DW$T$79)
	.dwattr DW$T$80, DW_AT_address_class(0x20)
DW$T$85	.dwtag  DW_TAG_pointer_type, DW_AT_type(*DW$T$84)
	.dwattr DW$T$85, DW_AT_address_class(0x20)
DW$T$56	.dwtag  DW_TAG_pointer_type, DW_AT_type(*DW$T$55)
	.dwattr DW$T$56, DW_AT_address_class(0x20)
DW$T$73	.dwtag  DW_TAG_pointer_type, DW_AT_type(*DW$T$72)
	.dwattr DW$T$73, DW_AT_address_class(0x20)
DW$T$82	.dwtag  DW_TAG_pointer_type, DW_AT_type(*DW$T$81)
	.dwattr DW$T$82, DW_AT_address_class(0x20)

DW$T$28	.dwtag  DW_TAG_structure_type
	.dwattr DW$T$28, DW_AT_name("IALG_Status")
	.dwattr DW$T$28, DW_AT_byte_size(0x04)
DW$52	.dwtag  DW_TAG_member, DW_AT_type(*DW$T$20)
	.dwattr DW$52, DW_AT_name("size"), DW_AT_symbol_name("_size")
	.dwattr DW$52, DW_AT_data_member_location[DW_OP_plus_uconst 0x0]
	.dwattr DW$52, DW_AT_accessibility(DW_ACCESS_public)
	.dwendtag DW$T$28


DW$T$58	.dwtag  DW_TAG_structure_type
	.dwattr DW$T$58, DW_AT_name("IALG_Obj")
	.dwattr DW$T$58, DW_AT_byte_size(0x04)

⌨️ 快捷键说明

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