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

📄 mdoc.asm

📁 OMAP1030 处理器的ARM 侧硬件测试代码 OMAP1030 是TI的双核处理器
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	.dwpsn	"mdoc.c",218,5
        LDR       A1, CON21             ; |218| 
        B         L21                   ; |218| 
        ; |218| 
;* --------------------------------------------------------------------------*
L19:    
	.dwpsn	"mdoc.c",219,9
        LDR       V9, [SP, #36]         ; |219| 
        TST       V9, #1                ; |219| 
        BEQ       L20                   ; |219| 
        ; |219| 
;* --------------------------------------------------------------------------*
	.dwpsn	"mdoc.c",220,5
        MOV       A1, #328              ; |220| 
        B         L21                   ; |220| 
        ; |220| 
;* --------------------------------------------------------------------------*
L20:    
	.dwpsn	"mdoc.c",224,5
        LDR       A1, [SP, #32]         ; |224| 
;* --------------------------------------------------------------------------*
L21:    
	.dwpsn	"mdoc.c",225,1
        ADD       SP, SP, #44           ; |224| 
	.dwcfa	0x0e, 4
        LDMFD     SP!, {PC}

DW$64	.dwtag  DW_TAG_loop
	.dwattr DW$64, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\mdoc.asm:L13:1:1214374312")
	.dwattr DW$64, DW_AT_begin_file("mdoc.c")
	.dwattr DW$64, DW_AT_begin_line(0x93)
	.dwattr DW$64, DW_AT_end_line(0xa6)
DW$65	.dwtag  DW_TAG_loop_range
	.dwattr DW$65, DW_AT_low_pc(DW$L$_io_input$10$B)
	.dwattr DW$65, DW_AT_high_pc(DW$L$_io_input$10$E)
DW$66	.dwtag  DW_TAG_loop_range
	.dwattr DW$66, DW_AT_low_pc(DW$L$_io_input$12$B)
	.dwattr DW$66, DW_AT_high_pc(DW$L$_io_input$12$E)
DW$67	.dwtag  DW_TAG_loop_range
	.dwattr DW$67, DW_AT_low_pc(DW$L$_io_input$14$B)
	.dwattr DW$67, DW_AT_high_pc(DW$L$_io_input$14$E)
	.dwendtag DW$64

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

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

DW$68	.dwtag  DW_TAG_subprogram, DW_AT_name("io_output"), DW_AT_symbol_name("_io_output")
	.dwattr DW$68, DW_AT_low_pc(_io_output)
	.dwattr DW$68, DW_AT_high_pc(0x00)
	.dwattr DW$68, DW_AT_begin_file("mdoc.c")
	.dwattr DW$68, DW_AT_begin_line(0xe4)
	.dwattr DW$68, DW_AT_begin_column(0x0c)
	.dwpsn	"mdoc.c",233,1

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: io_output                                                  *
;*                                                                           *
;*   Regs Modified     : A1,A2,A3,A4,V9,SP,LR,SR                             *
;*   Regs Used         : A1,A2,A3,A4,V9,SP,LR,SR                             *
;*   Local Frame Size  : 4 Args + 40 Auto + 4 Save = 48 byte                 *
;*****************************************************************************
_io_output:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        STMFD     SP!, {LR}
	.dwcfa	0x0e, 4
	.dwcfa	0x80, 14, 1
        SUB       SP, SP, #44
	.dwcfa	0x0e, 48
;* A1    assigned to _devNum
DW$69	.dwtag  DW_TAG_formal_parameter, DW_AT_name("devNum"), DW_AT_symbol_name("_devNum")
	.dwattr DW$69, DW_AT_type(*DW$T$49)
	.dwattr DW$69, DW_AT_location[DW_OP_reg0]
;* A2    assigned to _regs
DW$70	.dwtag  DW_TAG_formal_parameter, DW_AT_name("regs"), DW_AT_symbol_name("_regs")
	.dwattr DW$70, DW_AT_type(*DW$T$65)
	.dwattr DW$70, DW_AT_location[DW_OP_reg1]
;* A3    assigned to _buf
DW$71	.dwtag  DW_TAG_formal_parameter, DW_AT_name("buf"), DW_AT_symbol_name("_buf")
	.dwattr DW$71, DW_AT_type(*DW$T$3)
	.dwattr DW$71, DW_AT_location[DW_OP_reg2]
;* A4    assigned to _secNum
DW$72	.dwtag  DW_TAG_formal_parameter, DW_AT_name("secNum"), DW_AT_symbol_name("_secNum")
	.dwattr DW$72, DW_AT_type(*DW$T$56)
	.dwattr DW$72, DW_AT_location[DW_OP_reg3]
DW$73	.dwtag  DW_TAG_variable, DW_AT_name("devNum"), DW_AT_symbol_name("_devNum")
	.dwattr DW$73, DW_AT_type(*DW$T$49)
	.dwattr DW$73, DW_AT_location[DW_OP_breg13 4]
DW$74	.dwtag  DW_TAG_variable, DW_AT_name("regs"), DW_AT_symbol_name("_regs")
	.dwattr DW$74, DW_AT_type(*DW$T$65)
	.dwattr DW$74, DW_AT_location[DW_OP_breg13 8]
DW$75	.dwtag  DW_TAG_variable, DW_AT_name("buf"), DW_AT_symbol_name("_buf")
	.dwattr DW$75, DW_AT_type(*DW$T$3)
	.dwattr DW$75, DW_AT_location[DW_OP_breg13 12]
DW$76	.dwtag  DW_TAG_variable, DW_AT_name("secNum"), DW_AT_symbol_name("_secNum")
	.dwattr DW$76, DW_AT_type(*DW$T$56)
	.dwattr DW$76, DW_AT_location[DW_OP_breg13 16]
DW$77	.dwtag  DW_TAG_variable, DW_AT_name("sectors_to_write"), DW_AT_symbol_name("_sectors_to_write")
	.dwattr DW$77, DW_AT_type(*DW$T$56)
	.dwattr DW$77, DW_AT_location[DW_OP_breg13 20]
DW$78	.dwtag  DW_TAG_variable, DW_AT_name("secPerformed"), DW_AT_symbol_name("_secPerformed")
	.dwattr DW$78, DW_AT_type(*DW$T$56)
	.dwattr DW$78, DW_AT_location[DW_OP_breg13 24]
DW$79	.dwtag  DW_TAG_variable, DW_AT_name("offset"), DW_AT_symbol_name("_offset")
	.dwattr DW$79, DW_AT_type(*DW$T$56)
	.dwattr DW$79, DW_AT_location[DW_OP_breg13 28]
DW$80	.dwtag  DW_TAG_variable, DW_AT_name("rc"), DW_AT_symbol_name("_rc")
	.dwattr DW$80, DW_AT_type(*DW$T$59)
	.dwattr DW$80, DW_AT_location[DW_OP_breg13 32]
DW$81	.dwtag  DW_TAG_variable, DW_AT_name("status"), DW_AT_symbol_name("_status")
	.dwattr DW$81, DW_AT_type(*DW$T$49)
	.dwattr DW$81, DW_AT_location[DW_OP_breg13 36]
DW$82	.dwtag  DW_TAG_variable, DW_AT_name("multCount"), DW_AT_symbol_name("_multCount")
	.dwattr DW$82, DW_AT_type(*DW$T$19)
	.dwattr DW$82, DW_AT_location[DW_OP_breg13 40]
        STR       A4, [SP, #16]         ; |233| 
        STR       A3, [SP, #12]         ; |233| 
        STR       A2, [SP, #8]          ; |233| 
        STR       A1, [SP, #4]          ; |233| 
	.dwpsn	"mdoc.c",236,11
        MOV       V9, #0                ; |236| 
        STR       V9, [SP, #28]         ; |236| 
	.dwpsn	"mdoc.c",239,10
        MOV       V9, #0                ; |239| 
        STRB      V9, [SP, #40]         ; |239| 
	.dwpsn	"mdoc.c",243,2
        LDR       V9, [SP, #16]         ; |243| 
        CMP       V9, #0                ; |243| 
        BEQ       L22                   ; |243| 
        ; |243| 
;* --------------------------------------------------------------------------*
        LDR       V9, [SP, #16]         ; |243| 
        B         L23                   ; |243| 
        ; |243| 
;* --------------------------------------------------------------------------*
L22:    
        MOV       V9, #256              ; |243| 
;* --------------------------------------------------------------------------*
L23:    
        STR       V9, [SP, #20]         ; |243| 
	.dwpsn	"mdoc.c",246,5
        MOV       V9, #500              ; |246| 
        MOV       A4, #0                ; |246| 
        MOV       A3, #128              ; |246| 
        MOV       A2, #14               ; |246| 
        STR       V9, [SP, #0]          ; |246| 
        LDR       A1, [SP, #4]          ; |246| 
        BL        _ready                ; |246| 
        ; |246| 
        CMP       A1, #0                ; |246| 
        STR       A1, [SP, #32]         ; |246| 
        BEQ       L24                   ; |246| 
        ; |246| 
;* --------------------------------------------------------------------------*
	.dwpsn	"mdoc.c",248,3
        ADR       A2, SL1               ; |248| 
        MOV       A1, #1                ; |248| 
        BL        _UART_Printf          ; |248| 
        ; |248| 
	.dwpsn	"mdoc.c",250,9
        LDR       A1, [SP, #32]         ; |250| 
        B         L32                   ; |250| 
        ; |250| 
;* --------------------------------------------------------------------------*
L24:    
	.dwpsn	"mdoc.c",253,5
        LDR       V9, [SP, #32]         ; |253| 
        CMP       V9, #0                ; |253| 
        BNE       L31                   ; |253| 
        ; |253| 
;* --------------------------------------------------------------------------*
	.dwpsn	"mdoc.c",256,9
        LDR       V9, [SP, #8]          ; |256| 
        LDRB      A3, [V9, #1]          ; |256| 
        MOV       A2, #2                ; |256| 
        LDR       V9, CON1              ; |256| 
        LDR       A1, [V9, #0]          ; |256| 
        BL        _flWrite8bitUsing16bitsSingleShift ; |256| 
        ; |256| 
	.dwpsn	"mdoc.c",257,9
        LDR       V9, [SP, #8]          ; |257| 
        LDRB      A3, [V9, #2]          ; |257| 
        LDR       V9, CON1              ; |257| 
        MOV       A2, #3                ; |257| 
        LDR       A1, [V9, #0]          ; |257| 
        BL        _flWrite8bitUsing16bitsSingleShift ; |257| 
        ; |257| 
	.dwpsn	"mdoc.c",258,9
        LDR       V9, [SP, #8]          ; |258| 
        LDRB      A3, [V9, #3]          ; |258| 
        LDR       V9, CON1              ; |258| 
        MOV       A2, #4                ; |258| 
        LDR       A1, [V9, #0]          ; |258| 
        BL        _flWrite8bitUsing16bitsSingleShift ; |258| 
        ; |258| 
	.dwpsn	"mdoc.c",259,9
        LDR       V9, [SP, #8]          ; |259| 
        LDRB      A3, [V9, #4]          ; |259| 
        LDR       V9, CON1              ; |259| 
        MOV       A2, #5                ; |259| 
        LDR       A1, [V9, #0]          ; |259| 
        BL        _flWrite8bitUsing16bitsSingleShift ; |259| 
        ; |259| 
	.dwpsn	"mdoc.c",260,9
        LDR       V9, [SP, #8]          ; |260| 
        LDRB      A3, [V9, #0]          ; |260| 
        LDR       V9, CON1              ; |260| 
        MOV       A2, #1                ; |260| 
        LDR       A1, [V9, #0]          ; |260| 
        BL        _flWrite8bitUsing16bitsSingleShift ; |260| 
        ; |260| 
	.dwpsn	"mdoc.c",261,3
        LDR       V9, [SP, #8]          ; |261| 
        LDRB      A3, [V9, #5]          ; |261| 
        LDR       V9, CON1              ; |261| 
        MOV       A2, #6                ; |261| 
        LDR       A1, [V9, #0]          ; |261| 
        BL        _flWrite8bitUsing16bitsSingleShift ; |261| 
        ; |261| 
	.dwpsn	"mdoc.c",262,9
        LDR       V9, [SP, #8]          ; |262| 
        LDRB      A3, [V9, #6]          ; |262| 
        LDR       V9, CON1              ; |262| 
        MOV       A2, #7                ; |262| 
        LDR       A1, [V9, #0]          ; |262| 
        BL        _flWrite8bitUsing16bitsSingleShift ; |262| 
        ; |262| 
	.dwpsn	"mdoc.c",268,3
        B         L25                   ; |268| 
        ; |268| 
;* --------------------------------------------------------------------------*
;* --------------------------------------------------------------------------*
L25:    
	.dwpsn	"mdoc.c",272,8
        MOV       V9, #0                ; |272| 
        STR       V9, [SP, #24]         ; |272| 
	.dwpsn	"mdoc.c",272,24
        LDR       A1, [SP, #24]         ; |272| 
        LDR       V9, [SP, #20]         ; |272| 
        CMP       A1, V9                ; |272| 
        BCS       L28                   ; |272| 
        ; |272| 
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L26
;*
;*   Loop source line                : 272
;*   Loop closing brace source line  : 287
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L26:    
DW$L$_io_output$10$B:
	.dwpsn	"mdoc.c",274,5
        MOV       V9, #5                ; |274| 
        MOV       A4, #72               ; |274| 
        MOV       A3, #201              ; |274| 
        STR       V9, [SP, #0]          ; |274| 
        MOV       A2, #7                ; |274| 
        LDR       A1, [SP, #4]          ; |274| 
        BL        _ready                ; |274| 
        ; |274| 
        STR       A1, [SP, #32]         ; |274| 
	.dwpsn	"mdoc.c",276,5
        LDR       V9, [SP, #32]         ; |276| 
        CMP       V9, #0                ; |276| 
        BEQ       L27                   ; |276| 
        ; |276| 
DW$L$_io_output$10$E:
;* --------------------------------------------------------------------------*
	.dwpsn	"mdoc.c",280,6
        LDR       A1, [SP, #32]         ; |280| 
        B         L32                   ; |280| 
        ; |280| 
;* --------------------------------------------------------------------------*
L27:    
DW$L$_io_output$12$B:
	.dwpsn	"mdoc.c",284,5
        LDR       V9, [SP, #12]         ; |284| 
        LDR       A1, [SP, #28]         ; |284| 
        MOV       A3, #1                ; |284| 
        ADD       A2, A1, V9            ; |284| 
        LDR       V9, CON1              ; |284| 
        LDR       A1, [V9, #0]          ; |284| 
        BL        _hal_blk_write_nor    ; |284| 
        ; |284| 
	.dwpsn	"mdoc.c",286,5
        LDR       V9, [SP, #28]         ; |286| 
        ADD       V9, V9, #512          ; |286| 
        STR       V9, [SP, #28]         ; |286| 
	.dwpsn	"mdoc.c",272,55

⌨️ 快捷键说明

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