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

📄 mdoc.asm

📁 OMAP1030 处理器的ARM 侧硬件测试代码 OMAP1030 是TI的双核处理器
💻 ASM
📖 第 1 页 / 共 5 页
字号:
;******************************************************************************
;* TMS470 C/C++ Codegen                                             PC v4.1.4 *
;* Date/Time created: Wed Jun 25 14:11:52 2008                                *
;******************************************************************************
	.compiler_opts --abi=ti_arm9_abi --endian=little --float_support=fpalib --quiet --silicon_version=5e 
	.state32

DW$CU	.dwtag  DW_TAG_compile_unit
	.dwattr DW$CU, DW_AT_name("mdoc.c")
	.dwattr DW$CU, DW_AT_producer("TMS470 C/C++ Codegen PC v4.1.4 Copyright (c) 1996-2006 Texas Instruments Incorporated")
	.dwattr DW$CU, DW_AT_stmt_list(0x00)
	.dwattr DW$CU, DW_AT_TI_VERSION(0x01)
;*****************************************************************************
;* CINIT RECORDS                                                             *
;*****************************************************************************
	.sect	".cinit"
	.align	4
	.field  	1,32
	.field  	_H3DocFound+0,32
	.field  	0,8			; _H3DocFound @ 0

	.sect	".cinit"
	.align	4
	.field  	4,32
	.field  	_pPointer+0,32
	.field  	0,32			; _pPointer @ 0


DW$1	.dwtag  DW_TAG_subprogram, DW_AT_name("UART_Printf"), DW_AT_symbol_name("_UART_Printf")
	.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$10)
DW$3	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$27)
DW$4	.dwtag  DW_TAG_unspecified_parameters
	.dwendtag DW$1


DW$5	.dwtag  DW_TAG_subprogram, DW_AT_name("memset"), DW_AT_symbol_name("_memset")
	.dwattr DW$5, DW_AT_type(*DW$T$10)
	.dwattr DW$5, DW_AT_declaration(0x01)
	.dwattr DW$5, DW_AT_external(0x01)

DW$6	.dwtag  DW_TAG_subprogram, DW_AT_name("memcmp"), DW_AT_symbol_name("_memcmp")
	.dwattr DW$6, DW_AT_type(*DW$T$10)
	.dwattr DW$6, DW_AT_declaration(0x01)
	.dwattr DW$6, DW_AT_external(0x01)
	.bss	_buff,512,4
DW$7	.dwtag  DW_TAG_variable, DW_AT_name("buff"), DW_AT_symbol_name("_buff")
	.dwattr DW$7, DW_AT_type(*DW$T$43)
	.dwattr DW$7, DW_AT_location[DW_OP_addr _buff]
	.bss	_H3DocFound,1,1
DW$8	.dwtag  DW_TAG_variable, DW_AT_name("H3DocFound"), DW_AT_symbol_name("_H3DocFound")
	.dwattr DW$8, DW_AT_type(*DW$T$19)
	.dwattr DW$8, DW_AT_location[DW_OP_addr _H3DocFound]
	.global	_pPointer
	.bss	_pPointer,4,4
DW$9	.dwtag  DW_TAG_variable, DW_AT_name("pPointer"), DW_AT_symbol_name("_pPointer")
	.dwattr DW$9, DW_AT_location[DW_OP_addr _pPointer]
	.dwattr DW$9, DW_AT_type(*DW$T$47)
	.dwattr DW$9, DW_AT_external(0x01)
;	C:\CCStudio_v3.3\tms470\cgtools\bin\acp470.exe -@C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI48412 
	.sect	".text"
	.align	4
	.clink
	.armfunc _ready
	.state32

DW$10	.dwtag  DW_TAG_subprogram, DW_AT_name("ready"), DW_AT_symbol_name("_ready")
	.dwattr DW$10, DW_AT_low_pc(_ready)
	.dwattr DW$10, DW_AT_high_pc(0x00)
	.dwattr DW$10, DW_AT_begin_file("mdoc.c")
	.dwattr DW$10, DW_AT_begin_line(0x09)
	.dwattr DW$10, DW_AT_begin_column(0x0c)
	.dwpsn	"mdoc.c",14,1

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: ready                                                      *
;*                                                                           *
;*   Regs Modified     : A1,A2,A3,A4,V1,V9,SP,LR,SR                          *
;*   Regs Used         : A1,A2,A3,A4,V1,V9,SP,LR,SR                          *
;*   Local Frame Size  : 0 Args + 20 Auto + 8 Save = 28 byte                 *
;*****************************************************************************
_ready:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        STMFD     SP!, {V1, LR}
	.dwcfa	0x0e, 4
	.dwcfa	0x80, 14, 1
	.dwcfa	0x0e, 8
	.dwcfa	0x80, 4, 2
        SUB       SP, SP, #20
	.dwcfa	0x0e, 28
;* A1    assigned to _devNum
DW$11	.dwtag  DW_TAG_formal_parameter, DW_AT_name("devNum"), DW_AT_symbol_name("_devNum")
	.dwattr DW$11, DW_AT_type(*DW$T$49)
	.dwattr DW$11, DW_AT_location[DW_OP_reg0]
;* A2    assigned to _reg
DW$12	.dwtag  DW_TAG_formal_parameter, DW_AT_name("reg"), DW_AT_symbol_name("_reg")
	.dwattr DW$12, DW_AT_type(*DW$T$61)
	.dwattr DW$12, DW_AT_location[DW_OP_reg1]
;* A3    assigned to _mask
DW$13	.dwtag  DW_TAG_formal_parameter, DW_AT_name("mask"), DW_AT_symbol_name("_mask")
	.dwattr DW$13, DW_AT_type(*DW$T$19)
	.dwattr DW$13, DW_AT_location[DW_OP_reg2]
;* A4    assigned to _on_bits
DW$14	.dwtag  DW_TAG_formal_parameter, DW_AT_name("on_bits"), DW_AT_symbol_name("_on_bits")
	.dwattr DW$14, DW_AT_type(*DW$T$19)
	.dwattr DW$14, DW_AT_location[DW_OP_reg3]
DW$15	.dwtag  DW_TAG_formal_parameter, DW_AT_name("millisec"), DW_AT_symbol_name("_millisec")
	.dwattr DW$15, DW_AT_type(*DW$T$23)
	.dwattr DW$15, DW_AT_location[DW_OP_breg13 28]
DW$16	.dwtag  DW_TAG_variable, DW_AT_name("devNum"), DW_AT_symbol_name("_devNum")
	.dwattr DW$16, DW_AT_type(*DW$T$49)
	.dwattr DW$16, DW_AT_location[DW_OP_breg13 0]
DW$17	.dwtag  DW_TAG_variable, DW_AT_name("reg"), DW_AT_symbol_name("_reg")
	.dwattr DW$17, DW_AT_type(*DW$T$61)
	.dwattr DW$17, DW_AT_location[DW_OP_breg13 4]
DW$18	.dwtag  DW_TAG_variable, DW_AT_name("mask"), DW_AT_symbol_name("_mask")
	.dwattr DW$18, DW_AT_type(*DW$T$19)
	.dwattr DW$18, DW_AT_location[DW_OP_breg13 8]
DW$19	.dwtag  DW_TAG_variable, DW_AT_name("on_bits"), DW_AT_symbol_name("_on_bits")
	.dwattr DW$19, DW_AT_type(*DW$T$19)
	.dwattr DW$19, DW_AT_location[DW_OP_breg13 9]
DW$20	.dwtag  DW_TAG_variable, DW_AT_name("error"), DW_AT_symbol_name("_error")
	.dwattr DW$20, DW_AT_type(*DW$T$59)
	.dwattr DW$20, DW_AT_location[DW_OP_breg13 12]
;* V1    assigned to _tries
DW$21	.dwtag  DW_TAG_variable, DW_AT_name("tries"), DW_AT_symbol_name("_tries")
	.dwattr DW$21, DW_AT_type(*DW$T$23)
	.dwattr DW$21, DW_AT_location[DW_OP_reg4]
DW$22	.dwtag  DW_TAG_variable, DW_AT_name("status"), DW_AT_symbol_name("_status")
	.dwattr DW$22, DW_AT_type(*DW$T$19)
	.dwattr DW$22, DW_AT_location[DW_OP_breg13 16]
        STRB      A4, [SP, #9]          ; |14| 
        STRB      A3, [SP, #8]          ; |14| 
        STR       A2, [SP, #4]          ; |14| 
        STR       A1, [SP, #0]          ; |14| 
	.dwpsn	"mdoc.c",15,13
        MOV       V9, #0                ; |15| 
        STR       V9, [SP, #12]         ; |15| 
	.dwpsn	"mdoc.c",16,22
        MOV       A1, #106              ; |16| 
        ADD       A1, A1, #66560        ; |16| 
        LDR       V9, [SP, #28]         ; |16| 
        MULS      V1, A1, V9            ; |16| 
	.dwpsn	"mdoc.c",17,9
        MOV       V9, #0                ; |17| 
        STRB      V9, [SP, #16]         ; |17| 
	.dwpsn	"mdoc.c",22,2
        BNE       L1                    ; |22| 
        ; |22| 
;* --------------------------------------------------------------------------*
	.dwpsn	"mdoc.c",23,3
        MOV       V1, #1                ; |23| 
;* --------------------------------------------------------------------------*
L1:    
	.dwpsn	"mdoc.c",25,12
        MOVS      V9, V1                ; |25| 
        SUB       V1, V9, #1            ; |25| 
        BEQ       L5                    ; |25| 
        ; |25| 
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L2
;*
;*   Loop source line                : 25
;*   Loop closing brace source line  : 46
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L2:    
DW$L$_ready$4$B:
	.dwpsn	"mdoc.c",27,3
        LDR       V9, CON1              ; |27| 
        LDRH      A2, [SP, #4]          ; |27| 
        LDR       A1, [V9, #0]          ; |27| 
        BL        _flRead8bitUsing16bitsSingleShift ; |27| 
        ; |27| 
        STRB      A1, [SP, #16]         ; |27| 
	.dwpsn	"mdoc.c",28,9
        LDRB      A1, [SP, #8]          ; |28| 
        LDRB      V9, [SP, #16]         ; |28| 
        AND       A1, A1, V9            ; |28| 
        LDRB      V9, [SP, #9]          ; |28| 
        CMP       A1, V9                ; |28| 
        BNE       L3                    ; |28| 
        ; |28| 
DW$L$_ready$4$E:
;* --------------------------------------------------------------------------*
	.dwpsn	"mdoc.c",32,17
        MOV       A1, #0                ; |32| 
        B         L6                    ; |32| 
        ; |32| 
;* --------------------------------------------------------------------------*
;* --------------------------------------------------------------------------*
L3:    
DW$L$_ready$7$B:
	.dwpsn	"mdoc.c",35,8
        LDRB      V9, [SP, #16]         ; |35| 
        TST       V9, #1                ; |35| 
        BEQ       L4                    ; |35| 
        ; |35| 
DW$L$_ready$7$E:
;* --------------------------------------------------------------------------*
DW$L$_ready$8$B:
        LDRB      V9, [SP, #16]         ; |35| 
        TST       V9, #128              ; |35| 
        BNE       L4                    ; |35| 
        ; |35| 
DW$L$_ready$8$E:
;* --------------------------------------------------------------------------*
	.dwpsn	"mdoc.c",38,4
        LDR       V9, CON1              ; |38| 
        MOV       A2, #1                ; |38| 
        LDR       A1, [V9, #0]          ; |38| 
        BL        _flRead8bitUsing16bitsSingleShift ; |38| 
        ; |38| 
        STR       A1, [SP, #12]         ; |38| 
	.dwpsn	"mdoc.c",44,4
        LDR       A1, [SP, #12]         ; |44| 
        B         L6                    ; |44| 
        ; |44| 
;* --------------------------------------------------------------------------*
L4:    
DW$L$_ready$10$B:
	.dwpsn	"mdoc.c",25,12
        MOVS      V9, V1                ; |25| 
        SUB       V1, V9, #1            ; |25| 
        BNE       L2                    ; |25| 
        ; |25| 
DW$L$_ready$10$E:
;* --------------------------------------------------------------------------*
L5:    
	.dwpsn	"mdoc.c",49,5
        MOV       A1, #30               ; |49| 
;* --------------------------------------------------------------------------*
L6:    
	.dwpsn	"mdoc.c",50,1
        ADD       SP, SP, #20           ; |49| 
	.dwcfa	0x0e, 8
        LDMFD     SP!, {V1, PC}

DW$23	.dwtag  DW_TAG_loop
	.dwattr DW$23, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\mdoc.asm:L2:1:1214374312")
	.dwattr DW$23, DW_AT_begin_file("mdoc.c")
	.dwattr DW$23, DW_AT_begin_line(0x19)
	.dwattr DW$23, DW_AT_end_line(0x2e)
DW$24	.dwtag  DW_TAG_loop_range
	.dwattr DW$24, DW_AT_low_pc(DW$L$_ready$4$B)
	.dwattr DW$24, DW_AT_high_pc(DW$L$_ready$4$E)
DW$25	.dwtag  DW_TAG_loop_range
	.dwattr DW$25, DW_AT_low_pc(DW$L$_ready$7$B)
	.dwattr DW$25, DW_AT_high_pc(DW$L$_ready$7$E)
DW$26	.dwtag  DW_TAG_loop_range
	.dwattr DW$26, DW_AT_low_pc(DW$L$_ready$8$B)
	.dwattr DW$26, DW_AT_high_pc(DW$L$_ready$8$E)
DW$27	.dwtag  DW_TAG_loop_range
	.dwattr DW$27, DW_AT_low_pc(DW$L$_ready$10$B)
	.dwattr DW$27, DW_AT_high_pc(DW$L$_ready$10$E)
	.dwendtag DW$23

	.dwattr DW$10, DW_AT_end_file("mdoc.c")
	.dwattr DW$10, DW_AT_end_line(0x32)
	.dwattr DW$10, DW_AT_end_column(0x01)
	.dwendentry
	.dwendtag DW$10

	.sect	".text"
	.align	4
	.clink
	.armfunc _hal_blk_read_nor
	.state32
	.global	_hal_blk_read_nor

DW$28	.dwtag  DW_TAG_subprogram, DW_AT_name("hal_blk_read_nor"), DW_AT_symbol_name("_hal_blk_read_nor")
	.dwattr DW$28, DW_AT_low_pc(_hal_blk_read_nor)
	.dwattr DW$28, DW_AT_high_pc(0x00)
	.dwattr DW$28, DW_AT_begin_file("mdoc.c")
	.dwattr DW$28, DW_AT_begin_line(0x34)
	.dwattr DW$28, DW_AT_begin_column(0x0b)
	.dwpsn	"mdoc.c",56,1

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: hal_blk_read_nor                                           *
;*                                                                           *
;*   Regs Modified     : A1,A2,V9,SP,SR                                      *
;*   Regs Used         : A1,A2,A3,A4,V9,SP,SR                                *
;*   Local Frame Size  : 0 Args + 24 Auto + 0 Save = 24 byte                 *
;*****************************************************************************
_hal_blk_read_nor:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        SUB       SP, SP, #24
	.dwcfa	0x0e, 24
;* A1    assigned to _base
DW$29	.dwtag  DW_TAG_formal_parameter, DW_AT_name("base"), DW_AT_symbol_name("_base")
	.dwattr DW$29, DW_AT_type(*DW$T$32)
	.dwattr DW$29, DW_AT_location[DW_OP_reg0]

⌨️ 快捷键说明

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