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

📄 inth.asm

📁 OMAP1030 处理器的ARM 侧硬件测试代码 OMAP1030 是TI的双核处理器
💻 ASM
📖 第 1 页 / 共 5 页
字号:
        CMP       V9, #64               ; |91| 
        BCS       L9                    ; |91| 
        ; |91| 
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L8
;*
;*   Loop source line                : 91
;*   Loop closing brace source line  : 94
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L8:    
DW$L$_InterruptInit$4$B:
	.dwpsn	"inth.c",93,5
        MOV       A1, #0                ; |93| 
        LDR       V9, [SP, #0]          ; |93| 
        LDR       A2, CON10             ; |93| 
        STR       A1, [A2, +V9, LSL #2] ; |93| 
	.dwpsn	"inth.c",91,37
        LDR       V9, [SP, #0]          ; |91| 
        ADD       V9, V9, #1            ; |91| 
        STR       V9, [SP, #0]          ; |91| 
	.dwpsn	"inth.c",91,21
        LDR       V9, [SP, #0]          ; |91| 
        CMP       V9, #64               ; |91| 
        BCC       L8                    ; |91| 
        ; |91| 
DW$L$_InterruptInit$4$E:
;* --------------------------------------------------------------------------*
L9:    
	.dwpsn	"inth.c",96,3
        LDR       A1, CON4              ; |96| 
        MVN       A4, #0                ; |96| 
        MOV       A3, #32               ; |96| 
        MOV       A2, #0                ; |96| 
        BL        _Setgroup32bit        ; |96| 
        ; |96| 
	.dwpsn	"inth.c",98,3
        MVN       A4, #0                ; |98| 
        MOV       A3, #32               ; |98| 
        MOV       A2, #0                ; |98| 
        LDR       A1, CON6              ; |98| 
        BL        _Setgroup32bit        ; |98| 
        ; |98| 
	.dwpsn	"inth.c",100,3
        MVN       A4, #0                ; |100| 
        MOV       A3, #32               ; |100| 
        MOV       A2, #0                ; |100| 
        LDR       A1, CON8              ; |100| 
        BL        _Setgroup32bit        ; |100| 
        ; |100| 
	.dwpsn	"inth.c",102,3
	.dwcfa	0x0e, 8
        LDMFD     SP!, {A4, PC}

DW$22	.dwtag  DW_TAG_loop
	.dwattr DW$22, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\inth.asm:L8:1:1214374294")
	.dwattr DW$22, DW_AT_begin_file("inth.c")
	.dwattr DW$22, DW_AT_begin_line(0x5b)
	.dwattr DW$22, DW_AT_end_line(0x5e)
DW$23	.dwtag  DW_TAG_loop_range
	.dwattr DW$23, DW_AT_low_pc(DW$L$_InterruptInit$4$B)
	.dwattr DW$23, DW_AT_high_pc(DW$L$_InterruptInit$4$E)
	.dwendtag DW$22


DW$24	.dwtag  DW_TAG_loop
	.dwattr DW$24, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\inth.asm:L6:1:1214374294")
	.dwattr DW$24, DW_AT_begin_file("inth.c")
	.dwattr DW$24, DW_AT_begin_line(0x57)
	.dwattr DW$24, DW_AT_end_line(0x5a)
DW$25	.dwtag  DW_TAG_loop_range
	.dwattr DW$25, DW_AT_low_pc(DW$L$_InterruptInit$2$B)
	.dwattr DW$25, DW_AT_high_pc(DW$L$_InterruptInit$2$E)
	.dwendtag DW$24

	.dwattr DW$20, DW_AT_end_file("inth.c")
	.dwattr DW$20, DW_AT_end_line(0x66)
	.dwattr DW$20, DW_AT_end_column(0x03)
	.dwendentry
	.dwendtag DW$20

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

DW$26	.dwtag  DW_TAG_subprogram, DW_AT_name("InterruptProcess"), DW_AT_symbol_name("_InterruptProcess")
	.dwattr DW$26, DW_AT_low_pc(_InterruptProcess)
	.dwattr DW$26, DW_AT_high_pc(0x00)
	.dwattr DW$26, DW_AT_begin_file("inth.c")
	.dwattr DW$26, DW_AT_begin_line(0x71)
	.dwattr DW$26, DW_AT_begin_column(0x06)
	.dwpsn	"inth.c",114,1

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: InterruptProcess                                           *
;*                                                                           *
;*   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 + 8 Auto + 4 Save = 12 byte                  *
;*****************************************************************************
_InterruptProcess:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        STMFD     SP!, {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, 12
;* A1    assigned to _inthIndex
DW$27	.dwtag  DW_TAG_formal_parameter, DW_AT_name("inthIndex"), DW_AT_symbol_name("_inthIndex")
	.dwattr DW$27, DW_AT_type(*DW$T$11)
	.dwattr DW$27, DW_AT_location[DW_OP_reg0]
DW$28	.dwtag  DW_TAG_variable, DW_AT_name("inthIndex"), DW_AT_symbol_name("_inthIndex")
	.dwattr DW$28, DW_AT_type(*DW$T$11)
	.dwattr DW$28, DW_AT_location[DW_OP_breg13 0]
DW$29	.dwtag  DW_TAG_variable, DW_AT_name("isrProcess"), DW_AT_symbol_name("_isrProcess")
	.dwattr DW$29, DW_AT_type(*DW$T$28)
	.dwattr DW$29, DW_AT_location[DW_OP_breg13 4]
        STR       A1, [SP, #0]          ; |114| 
	.dwpsn	"inth.c",116,3
        LDR       V9, [SP, #0]          ; |116| 
        CMP       V9, #96               ; |116| 
        BCC       L11                   ; |116| 
        ; |116| 
;* --------------------------------------------------------------------------*
	.dwpsn	"inth.c",117,15
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L10
;*
;*   Loop source line                : 117
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L10:    
DW$L$_InterruptProcess$3$B:
        B         L10                   ; |117| 
        ; |117| 
DW$L$_InterruptProcess$3$E:
;* --------------------------------------------------------------------------*
;* --------------------------------------------------------------------------*
L11:    
	.dwpsn	"inth.c",122,4
        LDR       V9, [SP, #0]          ; |122| 
        LDR       A1, CON9              ; |122| 
        LDR       V9, [A1, +V9, LSL #2] ; |122| 
        STR       V9, [SP, #4]          ; |122| 
	.dwpsn	"inth.c",123,4
        LDR       V9, [SP, #4]          ; |123| 
        BLX       V9                    ; |123| 
        ; |123| 
	.dwpsn	"inth.c",126,3
	.dwpsn	"inth.c",128,3
	.dwcfa	0x0e, 12
        LDMFD     SP!, {A3, A4, PC}

DW$30	.dwtag  DW_TAG_loop
	.dwattr DW$30, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\inth.asm:L10:1:1214374294")
	.dwattr DW$30, DW_AT_begin_file("inth.c")
	.dwattr DW$30, DW_AT_begin_line(0x75)
	.dwattr DW$30, DW_AT_end_line(0x75)
DW$31	.dwtag  DW_TAG_loop_range
	.dwattr DW$31, DW_AT_low_pc(DW$L$_InterruptProcess$3$B)
	.dwattr DW$31, DW_AT_high_pc(DW$L$_InterruptProcess$3$E)
	.dwendtag DW$30

	.dwattr DW$26, DW_AT_end_file("inth.c")
	.dwattr DW$26, DW_AT_end_line(0x80)
	.dwattr DW$26, DW_AT_end_column(0x03)
	.dwendentry
	.dwendtag DW$26

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

DW$32	.dwtag  DW_TAG_subprogram, DW_AT_name("ConfInterrupt"), DW_AT_symbol_name("_ConfInterrupt")
	.dwattr DW$32, DW_AT_low_pc(_ConfInterrupt)
	.dwattr DW$32, DW_AT_high_pc(0x00)
	.dwattr DW$32, DW_AT_begin_file("inth.c")
	.dwattr DW$32, DW_AT_begin_line(0x8a)
	.dwattr DW$32, DW_AT_begin_column(0x06)
	.dwpsn	"inth.c",140,1

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: ConfInterrupt                                              *
;*                                                                           *
;*   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 + 16 Auto + 4 Save = 20 byte                 *
;*****************************************************************************
_ConfInterrupt:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        STMFD     SP!, {A1, 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, 20
	.dwcfa	0x80, 0, 5
	.dwcfa	0x0e, 20
;* A1    assigned to _inthNumber
DW$33	.dwtag  DW_TAG_formal_parameter, DW_AT_name("inthNumber"), DW_AT_symbol_name("_inthNumber")
	.dwattr DW$33, DW_AT_type(*DW$T$11)
	.dwattr DW$33, DW_AT_location[DW_OP_reg0]
;* A2    assigned to _irqOrFiq
DW$34	.dwtag  DW_TAG_formal_parameter, DW_AT_name("irqOrFiq"), DW_AT_symbol_name("_irqOrFiq")
	.dwattr DW$34, DW_AT_type(*DW$T$11)
	.dwattr DW$34, DW_AT_location[DW_OP_reg1]
;* A3    assigned to _trigerMode
DW$35	.dwtag  DW_TAG_formal_parameter, DW_AT_name("trigerMode"), DW_AT_symbol_name("_trigerMode")
	.dwattr DW$35, DW_AT_type(*DW$T$11)
	.dwattr DW$35, DW_AT_location[DW_OP_reg2]
;* A4    assigned to _inthPriority
DW$36	.dwtag  DW_TAG_formal_parameter, DW_AT_name("inthPriority"), DW_AT_symbol_name("_inthPriority")
	.dwattr DW$36, DW_AT_type(*DW$T$11)
	.dwattr DW$36, DW_AT_location[DW_OP_reg3]
DW$37	.dwtag  DW_TAG_variable, DW_AT_name("inthNumber"), DW_AT_symbol_name("_inthNumber")
	.dwattr DW$37, DW_AT_type(*DW$T$11)
	.dwattr DW$37, DW_AT_location[DW_OP_breg13 0]
DW$38	.dwtag  DW_TAG_variable, DW_AT_name("irqOrFiq"), DW_AT_symbol_name("_irqOrFiq")
	.dwattr DW$38, DW_AT_type(*DW$T$11)
	.dwattr DW$38, DW_AT_location[DW_OP_breg13 4]
DW$39	.dwtag  DW_TAG_variable, DW_AT_name("trigerMode"), DW_AT_symbol_name("_trigerMode")
	.dwattr DW$39, DW_AT_type(*DW$T$11)
	.dwattr DW$39, DW_AT_location[DW_OP_breg13 8]
DW$40	.dwtag  DW_TAG_variable, DW_AT_name("inthPriority"), DW_AT_symbol_name("_inthPriority")
	.dwattr DW$40, DW_AT_type(*DW$T$11)
	.dwattr DW$40, DW_AT_location[DW_OP_breg13 12]
        STR       A4, [SP, #12]         ; |140| 
        STR       A3, [SP, #8]          ; |140| 
        STR       A2, [SP, #4]          ; |140| 
        STR       A1, [SP, #0]          ; |140| 
	.dwpsn	"inth.c",141,4
        LDR       V9, [SP, #0]          ; |141| 
        CMP       V9, #31               ; |141| 
        BHI       L12                   ; |141| 
        ; |141| 
;* --------------------------------------------------------------------------*
	.dwpsn	"inth.c",142,8
        LDR       V9, [SP, #0]          ; |142| 
        LDR       A4, [SP, #4]          ; |142| 
        MOV       A3, #1                ; |142| 
        MOV       V9, V9, LSL #2        ; |142| 
        MOV       A2, #0                ; |142| 
        SUB       V9, V9, #224          ; |142| 
        SUB       A1, V9, #78848        ; |142| 
        BL        _Setgroup32bit        ; |142| 
        ; |142| 
	.dwpsn	"inth.c",143,8
        LDR       V9, [SP, #0]          ; |143| 
        MOV       V9, V9, LSL #2        ; |143| 
        SUB       V9, V9, #224          ; |143| 
        MOV       A3, #1                ; |143| 
        MOV       A2, #1                ; |143| 
        LDR       A4, [SP, #8]          ; |143| 
        SUB       A1, V9, #78848        ; |143| 
        BL        _Setgroup32bit        ; |143| 
        ; |143| 
	.dwpsn	"inth.c",144,8
        LDR       V9, [SP, #0]          ; |144| 
        MOV       V9, V9, LSL #2        ; |144| 
        SUB       V9, V9, #224          ; |144| 
        MOV       A3, #5                ; |144| 
        MOV       A2, #2                ; |144| 
        LDR       A4, [SP, #12]         ; |144| 
        SUB       A1, V9, #78848        ; |144| 
        BL        _Setgroup32bit        ; |144| 
        ; |144| 
	.dwpsn	"inth.c",146,8
        LDR       A1, [SP, #0]          ; |146| 
        BL        _OpenInterrupt        ; |146| 
        ; |146| 
	.dwpsn	"inth.c",148,8
        B         L16                   ; |148| 
        ; |148| 
;* --------------------------------------------------------------------------*
L12:    
	.dwpsn	"inth.c",149,9
        LDR       V9, [SP, #0]          ; |149| 
        CMP       V9, #64               ; |149| 
        BCS       L13                   ; |149| 
        ; |149| 
;* --------------------------------------------------------------------------*
	.dwpsn	"inth.c",151,8
        LDR       V9, [SP, #0]          ; |151| 
        LDR       A4, [SP, #4]          ; |151| 
        MOV       A3, #1                ; |151| 
        MOV       V9, V9, LSL #2        ; |151| 
        MOV       A2, #0                ; |151| 
        SUB       V9, V9, #996          ; |151| 
        SUB       A1, V9, #130048       ; |151| 
        BL        _Setgroup32bit        ; |151| 
        ; |151| 
	.dwpsn	"inth.c",152,8
        LDR       V9, [SP, #0]          ; |152| 
        MOV       V9, V9, LSL #2        ; |152| 
        SUB       V9, V9, #996          ; |152| 
        MOV       A3, #1                ; |152| 
        MOV       A2, #1                ; |152| 
        LDR       A4, [SP, #8]          ; |152| 
        SUB       A1, V9, #130048       ; |152| 
        BL        _Setgroup32bit        ; |152| 
        ; |152| 
	.dwpsn	"inth.c",153,8
        LDR       V9, [SP, #0]          ; |153| 
        MOV       V9, V9, LSL #2        ; |153| 
        SUB       V9, V9, #996          ; |153| 
        SUB       A1, V9, #130048       ; |153| 
        LDR       V9, [SP, #12]         ; |153| 

⌨️ 快捷键说明

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