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

📄 flash_nor_intel_br28f128l18t85.asm

📁 OMAP1030 处理器的ARM 侧硬件测试代码 OMAP1030 是TI的双核处理器
💻 ASM
📖 第 1 页 / 共 5 页
字号:
        ADR       A2, SL2               ; |80| 
        MOV       A1, #1                ; |80| 
        BL        _UART_Printf          ; |80| 
        ; |80| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",81,9
        MOV       V9, #65536            ; |81| 
        SUB       V9, V9, #1            ; |81| 
        STRH      V9, [SP, #4]          ; |81| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",82,9
        B         L8                    ; |82| 
        ; |82| 
;* --------------------------------------------------------------------------*
L7:    
DW$L$_flash_erase_test_a9_zhy$13$B:
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",85,6
        LDR       V9, [SP, #8]          ; |85| 
        ADD       V9, V9, #32768        ; |85| 
        STR       V9, [SP, #8]          ; |85| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",65,78
        LDRH      V9, [SP, #6]          ; |65| 
        ADD       V9, V9, #1            ; |65| 
        STRH      V9, [SP, #6]          ; |65| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",65,22
        LDRH      V9, [SP, #6]          ; |65| 
        CMP       V9, #4                ; |65| 
        BLT       L5                    ; |65| 
        ; |65| 
DW$L$_flash_erase_test_a9_zhy$13$E:
;* --------------------------------------------------------------------------*
L8:    
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",88,5
        LDRSH     A1, [SP, #4]          ; |88| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",89,1
	.dwcfa	0x0e, 16
        LDMFD     SP!, {A2, A3, A4, PC}

DW$21	.dwtag  DW_TAG_loop
	.dwattr DW$21, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\flash_NOR_INTEL_BR28F128L18T85.asm:L5:1:1214374287")
	.dwattr DW$21, DW_AT_begin_file("flash_NOR_INTEL_BR28F128L18T85.c")
	.dwattr DW$21, DW_AT_begin_line(0x41)
	.dwattr DW$21, DW_AT_end_line(0x56)
DW$22	.dwtag  DW_TAG_loop_range
	.dwattr DW$22, DW_AT_low_pc(DW$L$_flash_erase_test_a9_zhy$8$B)
	.dwattr DW$22, DW_AT_high_pc(DW$L$_flash_erase_test_a9_zhy$8$E)
DW$23	.dwtag  DW_TAG_loop_range
	.dwattr DW$23, DW_AT_low_pc(DW$L$_flash_erase_test_a9_zhy$9$B)
	.dwattr DW$23, DW_AT_high_pc(DW$L$_flash_erase_test_a9_zhy$9$E)
DW$24	.dwtag  DW_TAG_loop_range
	.dwattr DW$24, DW_AT_low_pc(DW$L$_flash_erase_test_a9_zhy$11$B)
	.dwattr DW$24, DW_AT_high_pc(DW$L$_flash_erase_test_a9_zhy$11$E)
DW$25	.dwtag  DW_TAG_loop_range
	.dwattr DW$25, DW_AT_low_pc(DW$L$_flash_erase_test_a9_zhy$13$B)
	.dwattr DW$25, DW_AT_high_pc(DW$L$_flash_erase_test_a9_zhy$13$E)
	.dwendtag DW$21


DW$26	.dwtag  DW_TAG_loop
	.dwattr DW$26, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\flash_NOR_INTEL_BR28F128L18T85.asm:L1:1:1214374287")
	.dwattr DW$26, DW_AT_begin_file("flash_NOR_INTEL_BR28F128L18T85.c")
	.dwattr DW$26, DW_AT_begin_line(0x2d)
	.dwattr DW$26, DW_AT_end_line(0x3e)
DW$27	.dwtag  DW_TAG_loop_range
	.dwattr DW$27, DW_AT_low_pc(DW$L$_flash_erase_test_a9_zhy$2$B)
	.dwattr DW$27, DW_AT_high_pc(DW$L$_flash_erase_test_a9_zhy$2$E)
DW$28	.dwtag  DW_TAG_loop_range
	.dwattr DW$28, DW_AT_low_pc(DW$L$_flash_erase_test_a9_zhy$4$B)
	.dwattr DW$28, DW_AT_high_pc(DW$L$_flash_erase_test_a9_zhy$4$E)
DW$29	.dwtag  DW_TAG_loop_range
	.dwattr DW$29, DW_AT_low_pc(DW$L$_flash_erase_test_a9_zhy$6$B)
	.dwattr DW$29, DW_AT_high_pc(DW$L$_flash_erase_test_a9_zhy$6$E)
	.dwendtag DW$26

	.dwattr DW$15, DW_AT_end_file("flash_NOR_INTEL_BR28F128L18T85.c")
	.dwattr DW$15, DW_AT_end_line(0x59)
	.dwattr DW$15, DW_AT_end_column(0x01)
	.dwendentry
	.dwendtag DW$15

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

DW$30	.dwtag  DW_TAG_subprogram, DW_AT_name("Read_FlashRegister"), DW_AT_symbol_name("_Read_FlashRegister")
	.dwattr DW$30, DW_AT_low_pc(_Read_FlashRegister)
	.dwattr DW$30, DW_AT_high_pc(0x00)
	.dwattr DW$30, DW_AT_begin_file("flash_NOR_INTEL_BR28F128L18T85.c")
	.dwattr DW$30, DW_AT_begin_line(0x5e)
	.dwattr DW$30, DW_AT_begin_column(0x0a)
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",95,2

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: Read_FlashRegister                                         *
;*                                                                           *
;*   Regs Modified     : A1,V9,SP,SR                                         *
;*   Regs Used         : A1,A2,A3,V9,SP,SR                                   *
;*   Local Frame Size  : 0 Args + 20 Auto + 0 Save = 20 byte                 *
;*****************************************************************************
_Read_FlashRegister:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        SUB       SP, SP, #20
	.dwcfa	0x0e, 20
;* A1    assigned to _Address1
DW$31	.dwtag  DW_TAG_formal_parameter, DW_AT_name("Address1"), DW_AT_symbol_name("_Address1")
	.dwattr DW$31, DW_AT_type(*DW$T$28)
	.dwattr DW$31, DW_AT_location[DW_OP_reg0]
;* A2    assigned to _Data1
DW$32	.dwtag  DW_TAG_formal_parameter, DW_AT_name("Data1"), DW_AT_symbol_name("_Data1")
	.dwattr DW$32, DW_AT_type(*DW$T$32)
	.dwattr DW$32, DW_AT_location[DW_OP_reg1]
;* A3    assigned to _Address2
DW$33	.dwtag  DW_TAG_formal_parameter, DW_AT_name("Address2"), DW_AT_symbol_name("_Address2")
	.dwattr DW$33, DW_AT_type(*DW$T$28)
	.dwattr DW$33, DW_AT_location[DW_OP_reg2]
DW$34	.dwtag  DW_TAG_variable, DW_AT_name("Address1"), DW_AT_symbol_name("_Address1")
	.dwattr DW$34, DW_AT_type(*DW$T$28)
	.dwattr DW$34, DW_AT_location[DW_OP_breg13 0]
DW$35	.dwtag  DW_TAG_variable, DW_AT_name("Data1"), DW_AT_symbol_name("_Data1")
	.dwattr DW$35, DW_AT_type(*DW$T$32)
	.dwattr DW$35, DW_AT_location[DW_OP_breg13 4]
DW$36	.dwtag  DW_TAG_variable, DW_AT_name("Address2"), DW_AT_symbol_name("_Address2")
	.dwattr DW$36, DW_AT_type(*DW$T$28)
	.dwattr DW$36, DW_AT_location[DW_OP_breg13 8]
DW$37	.dwtag  DW_TAG_variable, DW_AT_name("status"), DW_AT_symbol_name("_status")
	.dwattr DW$37, DW_AT_type(*DW$T$32)
	.dwattr DW$37, DW_AT_location[DW_OP_breg13 12]
DW$38	.dwtag  DW_TAG_variable, DW_AT_name("i"), DW_AT_symbol_name("_i")
	.dwattr DW$38, DW_AT_type(*DW$T$10)
	.dwattr DW$38, DW_AT_location[DW_OP_breg13 16]
        STR       A3, [SP, #8]          ; |95| 
        STRH      A2, [SP, #4]          ; |95| 
        STR       A1, [SP, #0]          ; |95| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",99,2
        LDRH      V9, [SP, #4]          ; |99| 
        LDR       A1, [SP, #0]          ; |99| 
        STR       V9, [A1, #0]          ; |99| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",100,6
        MOV       V9, #0                ; |100| 
        STR       V9, [SP, #16]         ; |100| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",100,10
        LDR       V9, [SP, #16]         ; |100| 
        CMP       V9, #10               ; |100| 
        BGE       L10                   ; |100| 
        ; |100| 
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L9
;*
;*   Loop source line                : 100
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L9:    
DW$L$_Read_FlashRegister$2$B:
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",100,15
        LDR       V9, [SP, #16]         ; |100| 
        ADD       V9, V9, #1            ; |100| 
        STR       V9, [SP, #16]         ; |100| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",100,10
        LDR       V9, [SP, #16]         ; |100| 
        CMP       V9, #10               ; |100| 
        BLT       L9                    ; |100| 
        ; |100| 
DW$L$_Read_FlashRegister$2$E:
;* --------------------------------------------------------------------------*
L10:    
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",101,2
        LDR       V9, [SP, #8]          ; |101| 
        LDRH      V9, [V9, #0]          ; |101| 
        STRH      V9, [SP, #12]         ; |101| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",102,2
        LDRH      A1, [SP, #12]         ; |102| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",104,2
        ADD       SP, SP, #20           ; |102| 
	.dwcfa	0x0e, 0
        BX        LR

DW$39	.dwtag  DW_TAG_loop
	.dwattr DW$39, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\flash_NOR_INTEL_BR28F128L18T85.asm:L9:1:1214374287")
	.dwattr DW$39, DW_AT_begin_file("flash_NOR_INTEL_BR28F128L18T85.c")
	.dwattr DW$39, DW_AT_begin_line(0x64)
	.dwattr DW$39, DW_AT_end_line(0x64)
DW$40	.dwtag  DW_TAG_loop_range
	.dwattr DW$40, DW_AT_low_pc(DW$L$_Read_FlashRegister$2$B)
	.dwattr DW$40, DW_AT_high_pc(DW$L$_Read_FlashRegister$2$E)
	.dwendtag DW$39

	.dwattr DW$30, DW_AT_end_file("flash_NOR_INTEL_BR28F128L18T85.c")
	.dwattr DW$30, DW_AT_end_line(0x68)
	.dwattr DW$30, DW_AT_end_column(0x02)
	.dwendentry
	.dwendtag DW$30

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

DW$41	.dwtag  DW_TAG_subprogram, DW_AT_name("flash_intel_28f256l18top_read_id"), DW_AT_symbol_name("_flash_intel_28f256l18top_read_id")
	.dwattr DW$41, DW_AT_low_pc(_flash_intel_28f256l18top_read_id)
	.dwattr DW$41, DW_AT_high_pc(0x00)
	.dwattr DW$41, DW_AT_begin_file("flash_NOR_INTEL_BR28F128L18T85.c")
	.dwattr DW$41, DW_AT_begin_line(0x7a)
	.dwattr DW$41, DW_AT_begin_column(0x06)
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",123,1

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: flash_intel_28f256l18top_read_id                           *
;*                                                                           *
;*   Regs Modified     : A1,A2,A3,A4,V9,SP,LR,SR                             *
;*   Regs Used         : A1,A2,A3,A4,V9,SP,LR,SR                             *
;*   Local Frame Size  : 0 Args + 12 Auto + 4 Save = 16 byte                 *
;*****************************************************************************
_flash_intel_28f256l18top_read_id:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        STMFD     SP!, {A2, A3, A4, LR}
	.dwcfa	0x0e, 4
	.dwcfa	0x80, 14, 1
	.dwcfa	0x0e, 8
	.dwcfa	0x80, 3, 2
	.dwcfa	0x0e, 12
	.dwcfa	0x80, 2, 3
	.dwcfa	0x0e, 16
	.dwcfa	0x80, 1, 4
	.dwcfa	0x0e, 16
;* A1    assigned to _Flash_base_address
DW$42	.dwtag  DW_TAG_formal_parameter, DW_AT_name("Flash_base_address"), DW_AT_symbol_name("_Flash_base_address")
	.dwattr DW$42, DW_AT_type(*DW$T$28)
	.dwattr DW$42, DW_AT_location[DW_OP_reg0]
;* A2    assigned to _ManufactureId
DW$43	.dwtag  DW_TAG_formal_parameter, DW_AT_name("ManufactureId"), DW_AT_symbol_name("_ManufactureId")
	.dwattr DW$43, DW_AT_type(*DW$T$29)
	.dwattr DW$43, DW_AT_location[DW_OP_reg1]
;* A3    assigned to _DeviceId
DW$44	.dwtag  DW_TAG_formal_parameter, DW_AT_name("DeviceId"), DW_AT_symbol_name("_DeviceId")
	.dwattr DW$44, DW_AT_type(*DW$T$29)
	.dwattr DW$44, DW_AT_location[DW_OP_reg2]
DW$45	.dwtag  DW_TAG_variable, DW_AT_name("Flash_base_address"), DW_AT_symbol_name("_Flash_base_address")
	.dwattr DW$45, DW_AT_type(*DW$T$28)
	.dwattr DW$45, DW_AT_location[DW_OP_breg13 0]
DW$46	.dwtag  DW_TAG_variable, DW_AT_name("ManufactureId"), DW_AT_symbol_name("_ManufactureId")
	.dwattr DW$46, DW_AT_type(*DW$T$29)
	.dwattr DW$46, DW_AT_location[DW_OP_breg13 4]
DW$47	.dwtag  DW_TAG_variable, DW_AT_name("DeviceId"), DW_AT_symbol_name("_DeviceId")
	.dwattr DW$47, DW_AT_type(*DW$T$29)
	.dwattr DW$47, DW_AT_location[DW_OP_breg13 8]
        STR       A3, [SP, #8]          ; |123| 
        STR       A2, [SP, #4]          ; |123| 
        STR       A1, [SP, #0]          ; |123| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",125,5
        MOV       A2, #144              ; |125| 
        LDR       A1, [SP, #0]          ; |125| 
        LDR       A3, [SP, #0]          ; |125| 
        BL        _Read_FlashRegister   ; |125| 
        ; |125| 
        LDR       V9, [SP, #4]          ; |125| 
        STR       A1, [V9, #0]          ; |125| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",127,5
        LDR       V9, [SP, #0]          ; |127| 
        MOV       A2, #144              ; |127| 
        LDR       A1, [SP, #0]          ; |127| 
        ADD       A3, V9, #2            ; |127| 
        BL        _Read_FlashRegister   ; |127| 
        ; |127| 
        LDR       V9, [SP, #8]          ; |127| 
        STR       A1, [V9, #0]          ; |127| 
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",130,5
	.dwpsn	"flash_NOR_INTEL_BR28F128L18T85.c",131,1
	.dwcfa	0x0e, 16
        LDMFD     SP!, {A2, A3, A4, PC}
	.dwattr DW$41, DW_AT_end_file("flash_NOR_INTEL_BR28F128L18T85.c")
	.dwattr DW$41, DW_AT_end_line(0x83)
	.dwattr DW$41, DW_AT_end_column(0x01)
	.dwendentry
	.dwendtag DW$41

	.sect	".text"
	.align	4

⌨️ 快捷键说明

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