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

📄 vikingiiusim.asm

📁 OMAP1030 处理器的ARM 侧硬件测试代码 OMAP1030 是TI的双核处理器
💻 ASM
📖 第 1 页 / 共 5 页
字号:
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L18:    
DW$L$_VIKING_USIM_Automatic_ATR_test$13$B:
	.dwpsn	"vikingIIUsim.c",95,4
        LDR       V9, [SP, #0]          ; |95| 
        ADR       A2, SL3               ; |95| 
        ADD       V9, SP, V9, LSL #2    ; |95| 
        MOV       A1, #1                ; |95| 
        LDR       A3, [V9, #12]         ; |95| 
        BL        _UART_Printf          ; |95| 
        ; |95| 
	.dwpsn	"vikingIIUsim.c",93,16
        LDR       V9, [SP, #0]          ; |93| 
        ADD       V9, V9, #1            ; |93| 
        STR       V9, [SP, #0]          ; |93| 
	.dwpsn	"vikingIIUsim.c",93,11
        LDR       V9, [SP, #0]          ; |93| 
        CMP       V9, #22               ; |93| 
        BLT       L18                   ; |93| 
        ; |93| 
DW$L$_VIKING_USIM_Automatic_ATR_test$13$E:
;* --------------------------------------------------------------------------*
L19:    
	.dwpsn	"vikingIIUsim.c",97,3
        ADR       A2, SL4               ; |97| 
        MOV       A1, #1                ; |97| 
        BL        _UART_Printf          ; |97| 
        ; |97| 
	.dwpsn	"vikingIIUsim.c",99,2
        B         L21                   ; |99| 
        ; |99| 
;* --------------------------------------------------------------------------*
L20:    
	.dwpsn	"vikingIIUsim.c",102,3
        ADR       A2, SL5               ; |102| 
        MOV       A1, #1                ; |102| 
        BL        _UART_Printf          ; |102| 
        ; |102| 
;* --------------------------------------------------------------------------*
L21:    
	.dwpsn	"vikingIIUsim.c",107,2
        MOV       V9, #1024             ; |107| 
        LDR       A1, CON3              ; |107| 
        SUB       V9, V9, #123          ; |107| 
        STRH      V9, [A1, #0]          ; |107| 
	.dwpsn	"vikingIIUsim.c",108,2
        MOV       V9, #512              ; |108| 
        LDR       A1, CON6              ; |108| 
        SUB       V9, V9, #106          ; |108| 
        STRH      V9, [A1, #0]          ; |108| 
	.dwpsn	"vikingIIUsim.c",110,1
        ADD       SP, SP, #144
	.dwcfa	0x0e, 4
        LDMFD     SP!, {PC}

DW$27	.dwtag  DW_TAG_loop
	.dwattr DW$27, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\vikingIIUsim.asm:L18:1:1214374336")
	.dwattr DW$27, DW_AT_begin_file("vikingIIUsim.c")
	.dwattr DW$27, DW_AT_begin_line(0x5d)
	.dwattr DW$27, DW_AT_end_line(0x60)
DW$28	.dwtag  DW_TAG_loop_range
	.dwattr DW$28, DW_AT_low_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$13$B)
	.dwattr DW$28, DW_AT_high_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$13$E)
	.dwendtag DW$27


DW$29	.dwtag  DW_TAG_loop
	.dwattr DW$29, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\vikingIIUsim.asm:L14:1:1214374336")
	.dwattr DW$29, DW_AT_begin_file("vikingIIUsim.c")
	.dwattr DW$29, DW_AT_begin_line(0x4e)
	.dwattr DW$29, DW_AT_end_line(0x58)
DW$30	.dwtag  DW_TAG_loop_range
	.dwattr DW$30, DW_AT_low_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$6$B)
	.dwattr DW$30, DW_AT_high_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$6$E)
DW$31	.dwtag  DW_TAG_loop_range
	.dwattr DW$31, DW_AT_low_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$7$B)
	.dwattr DW$31, DW_AT_high_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$7$E)
DW$32	.dwtag  DW_TAG_loop_range
	.dwattr DW$32, DW_AT_low_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$8$B)
	.dwattr DW$32, DW_AT_high_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$8$E)
DW$33	.dwtag  DW_TAG_loop_range
	.dwattr DW$33, DW_AT_low_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$9$B)
	.dwattr DW$33, DW_AT_high_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$9$E)
	.dwendtag DW$29


DW$34	.dwtag  DW_TAG_loop
	.dwattr DW$34, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\vikingIIUsim.asm:L12:1:1214374336")
	.dwattr DW$34, DW_AT_begin_file("vikingIIUsim.c")
	.dwattr DW$34, DW_AT_begin_line(0x48)
	.dwattr DW$34, DW_AT_end_line(0x4b)
DW$35	.dwtag  DW_TAG_loop_range
	.dwattr DW$35, DW_AT_low_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$4$B)
	.dwattr DW$35, DW_AT_high_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$4$E)
	.dwendtag DW$34


DW$36	.dwtag  DW_TAG_loop
	.dwattr DW$36, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\vikingIIUsim.asm:L10:1:1214374336")
	.dwattr DW$36, DW_AT_begin_file("vikingIIUsim.c")
	.dwattr DW$36, DW_AT_begin_line(0x41)
	.dwattr DW$36, DW_AT_end_line(0x41)
DW$37	.dwtag  DW_TAG_loop_range
	.dwattr DW$37, DW_AT_low_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$2$B)
	.dwattr DW$37, DW_AT_high_pc(DW$L$_VIKING_USIM_Automatic_ATR_test$2$E)
	.dwendtag DW$36

	.dwattr DW$22, DW_AT_end_file("vikingIIUsim.c")
	.dwattr DW$22, DW_AT_end_line(0x6e)
	.dwattr DW$22, DW_AT_end_column(0x01)
	.dwendentry
	.dwendtag DW$22

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

DW$38	.dwtag  DW_TAG_subprogram, DW_AT_name("VIKING_usim_read_rxfifo"), DW_AT_symbol_name("_VIKING_usim_read_rxfifo")
	.dwattr DW$38, DW_AT_low_pc(_VIKING_usim_read_rxfifo)
	.dwattr DW$38, DW_AT_high_pc(0x00)
	.dwattr DW$38, DW_AT_begin_file("vikingIIUsim.c")
	.dwattr DW$38, DW_AT_begin_line(0x72)
	.dwattr DW$38, DW_AT_begin_column(0x06)
	.dwpsn	"vikingIIUsim.c",115,1

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: VIKING_usim_read_rxfifo                                    *
;*                                                                           *
;*   Regs Modified     : A1,V9,SP,SR                                         *
;*   Regs Used         : A1,A2,V9,SP,SR                                      *
;*   Local Frame Size  : 0 Args + 12 Auto + 0 Save = 12 byte                 *
;*****************************************************************************
_VIKING_usim_read_rxfifo:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        SUB       SP, SP, #12
	.dwcfa	0x0e, 12
;* A1    assigned to _read_buf
DW$39	.dwtag  DW_TAG_formal_parameter, DW_AT_name("read_buf"), DW_AT_symbol_name("_read_buf")
	.dwattr DW$39, DW_AT_type(*DW$T$25)
	.dwattr DW$39, DW_AT_location[DW_OP_reg0]
;* A2    assigned to _read_count
DW$40	.dwtag  DW_TAG_formal_parameter, DW_AT_name("read_count"), DW_AT_symbol_name("_read_count")
	.dwattr DW$40, DW_AT_type(*DW$T$11)
	.dwattr DW$40, DW_AT_location[DW_OP_reg1]
DW$41	.dwtag  DW_TAG_variable, DW_AT_name("read_buf"), DW_AT_symbol_name("_read_buf")
	.dwattr DW$41, DW_AT_type(*DW$T$25)
	.dwattr DW$41, DW_AT_location[DW_OP_breg13 0]
DW$42	.dwtag  DW_TAG_variable, DW_AT_name("read_count"), DW_AT_symbol_name("_read_count")
	.dwattr DW$42, DW_AT_type(*DW$T$11)
	.dwattr DW$42, DW_AT_location[DW_OP_breg13 4]
DW$43	.dwtag  DW_TAG_variable, DW_AT_name("i"), DW_AT_symbol_name("_i")
	.dwattr DW$43, DW_AT_type(*DW$T$10)
	.dwattr DW$43, DW_AT_location[DW_OP_breg13 8]
        STR       A2, [SP, #4]          ; |115| 
        STR       A1, [SP, #0]          ; |115| 
	.dwpsn	"vikingIIUsim.c",117,5
        MOV       V9, #0                ; |117| 
        STR       V9, [SP, #8]          ; |117| 
	.dwpsn	"vikingIIUsim.c",118,8
        LDR       A1, [SP, #8]          ; |118| 
        LDR       V9, [SP, #4]          ; |118| 
        CMP       A1, V9                ; |118| 
        BCS       L24                   ; |118| 
        ; |118| 
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L22
;*
;*   Loop source line                : 118
;*   Loop closing brace source line  : 125
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L22:    
DW$L$_VIKING_usim_read_rxfifo$2$B:
	.dwpsn	"vikingIIUsim.c",120,3
        LDR       V9, CON4              ; |120| 
        LDRH      V9, [V9, #0]          ; |120| 
        TST       V9, #16384            ; |120| 
        BNE       L23                   ; |120| 
        ; |120| 
DW$L$_VIKING_usim_read_rxfifo$2$E:
;* --------------------------------------------------------------------------*
DW$L$_VIKING_usim_read_rxfifo$3$B:
	.dwpsn	"vikingIIUsim.c",122,4
        LDR       V9, [SP, #0]          ; |122| 
        ADD       A1, V9, #2            ; |122| 
        STR       A1, [SP, #0]          ; |122| 
        LDR       A1, CON7              ; |122| 
        LDRH      A1, [A1, #0]          ; |122| 
        AND       A1, A1, #255          ; |122| 
        STRH      A1, [V9, #0]          ; |122| 
	.dwpsn	"vikingIIUsim.c",123,4
        LDR       V9, [SP, #8]          ; |123| 
        ADD       V9, V9, #1            ; |123| 
        STR       V9, [SP, #8]          ; |123| 
DW$L$_VIKING_usim_read_rxfifo$3$E:
;* --------------------------------------------------------------------------*
L23:    
DW$L$_VIKING_usim_read_rxfifo$4$B:
	.dwpsn	"vikingIIUsim.c",118,8
        LDR       V9, [SP, #4]          ; |118| 
        LDR       A1, [SP, #8]          ; |118| 
        CMP       A1, V9                ; |118| 
        BCC       L22                   ; |118| 
        ; |118| 
DW$L$_VIKING_usim_read_rxfifo$4$E:
;* --------------------------------------------------------------------------*
L24:    
	.dwpsn	"vikingIIUsim.c",126,1
        ADD       SP, SP, #12
	.dwcfa	0x0e, 0
        BX        LR

DW$44	.dwtag  DW_TAG_loop
	.dwattr DW$44, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\vikingIIUsim.asm:L22:1:1214374336")
	.dwattr DW$44, DW_AT_begin_file("vikingIIUsim.c")
	.dwattr DW$44, DW_AT_begin_line(0x76)
	.dwattr DW$44, DW_AT_end_line(0x7d)
DW$45	.dwtag  DW_TAG_loop_range
	.dwattr DW$45, DW_AT_low_pc(DW$L$_VIKING_usim_read_rxfifo$2$B)
	.dwattr DW$45, DW_AT_high_pc(DW$L$_VIKING_usim_read_rxfifo$2$E)
DW$46	.dwtag  DW_TAG_loop_range
	.dwattr DW$46, DW_AT_low_pc(DW$L$_VIKING_usim_read_rxfifo$3$B)
	.dwattr DW$46, DW_AT_high_pc(DW$L$_VIKING_usim_read_rxfifo$3$E)
DW$47	.dwtag  DW_TAG_loop_range
	.dwattr DW$47, DW_AT_low_pc(DW$L$_VIKING_usim_read_rxfifo$4$B)
	.dwattr DW$47, DW_AT_high_pc(DW$L$_VIKING_usim_read_rxfifo$4$E)
	.dwendtag DW$44

	.dwattr DW$38, DW_AT_end_file("vikingIIUsim.c")
	.dwattr DW$38, DW_AT_end_line(0x7e)
	.dwattr DW$38, DW_AT_end_column(0x01)
	.dwendentry
	.dwendtag DW$38

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

DW$48	.dwtag  DW_TAG_subprogram, DW_AT_name("VIKING_usim_write_txfifo"), DW_AT_symbol_name("_VIKING_usim_write_txfifo")
	.dwattr DW$48, DW_AT_low_pc(_VIKING_usim_write_txfifo)
	.dwattr DW$48, DW_AT_high_pc(0x00)
	.dwattr DW$48, DW_AT_begin_file("vikingIIUsim.c")
	.dwattr DW$48, DW_AT_begin_line(0x80)
	.dwattr DW$48, DW_AT_begin_column(0x06)
	.dwpsn	"vikingIIUsim.c",129,1

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: VIKING_usim_write_txfifo                                   *
;*                                                                           *
;*   Regs Modified     : A1,V9,SP,SR                                         *
;*   Regs Used         : A1,A2,V9,SP,SR                                      *
;*   Local Frame Size  : 0 Args + 12 Auto + 0 Save = 12 byte                 *
;*****************************************************************************
_VIKING_usim_write_txfifo:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        SUB       SP, SP, #12
	.dwcfa	0x0e, 12
;* A1    assigned to _write_buf
DW$49	.dwtag  DW_TAG_formal_parameter, DW_AT_name("write_buf"), DW_AT_symbol_name("_write_buf")
	.dwattr DW$49, DW_AT_type(*DW$T$25)
	.dwattr DW$49, DW_AT_location[DW_OP_reg0]
;* A2    assigned to _write_count
DW$50	.dwtag  DW_TAG_formal_parameter, DW_AT_name("write_count"), DW_AT_symbol_name("_write_count")
	.dwattr DW$50, DW_AT_type(*DW$T$11)
	.dwattr DW$50, DW_AT_location[DW_OP_reg1]
DW$51	.dwtag  DW_TAG_variable, DW_AT_name("write_buf"), DW_AT_symbol_name("_write_buf")
	.dwattr DW$51, DW_AT_type(*DW$T$25)
	.dwattr DW$51, DW_AT_location[DW_OP_breg13 0]
DW$52	.dwtag  DW_TAG_variable, DW_AT_name("write_count"), DW_AT_symbol_name("_write_count")
	.dwattr DW$52, DW_AT_type(*DW$T$11)
	.dwattr DW$52, DW_AT_location[DW_OP_breg13 4]
DW$53	.dwtag  DW_TAG_variable, DW_AT_name("i"), DW_AT_symbol_name("_i")
	.dwattr DW$53, DW_AT_type(*DW$T$10)
	.dwattr DW$53, DW_AT_location[DW_OP_breg13 8]
        STR       A2, [SP, #4]          ; |129| 
        STR       A1, [SP, #0]          ; |129| 
	.dwpsn	"vikingIIUsim.c",132,9
        MOV       V9, #0                ; |132| 
        STR       V9, [SP, #8]          ; |132| 
	.dwpsn	"vikingIIUsim.c",132,14
        LDR       A1, [SP, #8]          ; |132| 
        LDR       V9, [SP, #4]          ; |132| 
        CMP       A1, V9                ; |132| 
        BCS       L26                   ; |132| 
        ; |132| 

⌨️ 快捷键说明

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