📄 inth.asm
字号:
;******************************************************************************
;* TMS470 C/C++ Codegen PC v4.1.4 *
;* Date/Time created: Wed Jun 25 14:11:34 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("inth.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)
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$21)
DW$4 .dwtag DW_TAG_unspecified_parameters
.dwendtag DW$1
DW$5 .dwtag DW_TAG_subprogram, DW_AT_name("Setgroup32bit"), DW_AT_symbol_name("_Setgroup32bit")
.dwattr DW$5, DW_AT_declaration(0x01)
.dwattr DW$5, DW_AT_external(0x01)
DW$6 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$11)
DW$7 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$11)
DW$8 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$11)
DW$9 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$11)
.dwendtag DW$5
DW$10 .dwtag DW_TAG_subprogram, DW_AT_name("Setgroupbit"), DW_AT_symbol_name("_Setgroupbit")
.dwattr DW$10, DW_AT_type(*DW$T$10)
.dwattr DW$10, DW_AT_declaration(0x01)
.dwattr DW$10, DW_AT_external(0x01)
.global _armirq
.bss _armirq,384,4
DW$11 .dwtag DW_TAG_variable, DW_AT_name("armirq"), DW_AT_symbol_name("_armirq")
.dwattr DW$11, DW_AT_location[DW_OP_addr _armirq]
.dwattr DW$11, DW_AT_type(*DW$T$29)
.dwattr DW$11, DW_AT_external(0x01)
DW$12 .dwtag DW_TAG_variable, DW_AT_name("gpioirq"), DW_AT_symbol_name("_gpioirq")
.dwattr DW$12, DW_AT_type(*DW$T$30)
.dwattr DW$12, DW_AT_declaration(0x01)
.dwattr DW$12, DW_AT_external(0x01)
; C:\CCStudio_v3.3\tms470\cgtools\bin\acp470.exe -@C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI22412
.sect ".text"
.align 4
.clink
.armfunc _InitializeParameter
.state32
.global _InitializeParameter
DW$13 .dwtag DW_TAG_subprogram, DW_AT_name("InitializeParameter"), DW_AT_symbol_name("_InitializeParameter")
.dwattr DW$13, DW_AT_low_pc(_InitializeParameter)
.dwattr DW$13, DW_AT_high_pc(0x00)
.dwattr DW$13, DW_AT_begin_file("inth.c")
.dwattr DW$13, DW_AT_begin_line(0x20)
.dwattr DW$13, DW_AT_begin_column(0x06)
.dwpsn "inth.c",33,1
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: InitializeParameter *
;* *
;* Regs Modified : V9,SP *
;* Regs Used : V9,SP *
;* Local Frame Size : 0 Args + 20 Auto + 0 Save = 20 byte *
;*****************************************************************************
_InitializeParameter:
;* --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 26, 14
SUB SP, SP, #20
.dwcfa 0x0e, 20
DW$14 .dwtag DW_TAG_variable, DW_AT_name("initParameter"), DW_AT_symbol_name("_initParameter")
.dwattr DW$14, DW_AT_type(*DW$T$19)
.dwattr DW$14, DW_AT_location[DW_OP_breg13 0]
.dwpsn "inth.c",36,4
MOV V9, #1 ; |36|
STR V9, [SP, #0] ; |36|
.dwpsn "inth.c",37,4
MOV V9, #0 ; |37|
STR V9, [SP, #4] ; |37|
.dwpsn "inth.c",38,4
MOV V9, #1 ; |38|
STR V9, [SP, #12] ; |38|
.dwpsn "inth.c",39,4
MOV V9, #0 ; |39|
STR V9, [SP, #8] ; |39|
.dwpsn "inth.c",40,4
MOV V9, #255 ; |40|
STR V9, [SP, #16] ; |40|
.dwpsn "inth.c",44,3
ADD SP, SP, #20
.dwcfa 0x0e, 0
BX LR
.dwattr DW$13, DW_AT_end_file("inth.c")
.dwattr DW$13, DW_AT_end_line(0x2c)
.dwattr DW$13, DW_AT_end_column(0x03)
.dwendentry
.dwendtag DW$13
.sect ".text"
.align 4
.clink
.armfunc _OpenInterrupt
.state32
.global _OpenInterrupt
DW$15 .dwtag DW_TAG_subprogram, DW_AT_name("OpenInterrupt"), DW_AT_symbol_name("_OpenInterrupt")
.dwattr DW$15, DW_AT_low_pc(_OpenInterrupt)
.dwattr DW$15, DW_AT_high_pc(0x00)
.dwattr DW$15, DW_AT_begin_file("inth.c")
.dwattr DW$15, DW_AT_begin_line(0x35)
.dwattr DW$15, DW_AT_begin_column(0x07)
.dwpsn "inth.c",54,1
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: OpenInterrupt *
;* *
;* 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 + 4 Auto + 4 Save = 8 byte *
;*****************************************************************************
_OpenInterrupt:
;* --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 26, 14
STMFD SP!, {A4, LR}
.dwcfa 0x0e, 4
.dwcfa 0x80, 14, 1
.dwcfa 0x0e, 8
.dwcfa 0x80, 3, 2
.dwcfa 0x0e, 8
;* A1 assigned to _indexInt
DW$16 .dwtag DW_TAG_formal_parameter, DW_AT_name("indexInt"), DW_AT_symbol_name("_indexInt")
.dwattr DW$16, DW_AT_type(*DW$T$11)
.dwattr DW$16, DW_AT_location[DW_OP_reg0]
DW$17 .dwtag DW_TAG_variable, DW_AT_name("indexInt"), DW_AT_symbol_name("_indexInt")
.dwattr DW$17, DW_AT_type(*DW$T$11)
.dwattr DW$17, DW_AT_location[DW_OP_breg13 0]
STR A1, [SP, #0] ; |54|
.dwpsn "inth.c",55,3
LDR V9, [SP, #0] ; |55|
CMP V9, #96 ; |55|
BCC L2 ; |55|
; |55|
;* --------------------------------------------------------------------------*
.dwpsn "inth.c",57,12
;* --------------------------------------------------------------------------*
;* BEGIN LOOP L1
;*
;* Loop source line : 57
;* Known Minimum Trip Count : 1
;* Known Maximum Trip Count : 4294967295
;* Known Max Trip Count Factor : 1
;* --------------------------------------------------------------------------*
L1:
DW$L$_OpenInterrupt$3$B:
B L1 ; |57|
; |57|
DW$L$_OpenInterrupt$3$E:
;* --------------------------------------------------------------------------*
L2:
.dwpsn "inth.c",60,3
LDR V9, [SP, #0] ; |60|
CMP V9, #32 ; |60|
BCS L3 ; |60|
; |60|
;* --------------------------------------------------------------------------*
.dwpsn "inth.c",62,5
LDR A1, CON4 ; |62|
LDR A2, [SP, #0] ; |62|
MOV A4, #0 ; |62|
MOV A3, #1 ; |62|
BL _Setgroup32bit ; |62|
; |62|
.dwpsn "inth.c",64,5
B L5 ; |64|
; |64|
;* --------------------------------------------------------------------------*
L3:
.dwpsn "inth.c",65,9
LDR V9, [SP, #0] ; |65|
CMP V9, #64 ; |65|
BCS L4 ; |65|
; |65|
;* --------------------------------------------------------------------------*
.dwpsn "inth.c",66,5
LDR A1, CON4 ; |66|
MOV A4, #0 ; |66|
MOV A3, #1 ; |66|
MOV A2, #0 ; |66|
BL _Setgroup32bit ; |66|
; |66|
.dwpsn "inth.c",67,5
LDR V9, [SP, #0] ; |67|
MOV A4, #0 ; |67|
MOV A3, #1 ; |67|
LDR A1, CON6 ; |67|
SUB A2, V9, #32 ; |67|
BL _Setgroup32bit ; |67|
; |67|
.dwpsn "inth.c",68,2
B L5 ; |68|
; |68|
;* --------------------------------------------------------------------------*
L4:
.dwpsn "inth.c",70,5
LDR A1, CON4 ; |70|
MOV A4, #0 ; |70|
MOV A3, #1 ; |70|
MOV A2, #0 ; |70|
BL _Setgroup32bit ; |70|
; |70|
.dwpsn "inth.c",71,5
LDR V9, [SP, #0] ; |71|
MOV A4, #0 ; |71|
MOV A3, #1 ; |71|
LDR A1, CON8 ; |71|
SUB A2, V9, #64 ; |71|
BL _Setgroup32bit ; |71|
; |71|
.dwpsn "inth.c",72,4
;* --------------------------------------------------------------------------*
L5:
.dwpsn "inth.c",74,1
.dwcfa 0x0e, 8
LDMFD SP!, {A4, PC}
DW$18 .dwtag DW_TAG_loop
.dwattr DW$18, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\inth.asm:L1:1:1214374294")
.dwattr DW$18, DW_AT_begin_file("inth.c")
.dwattr DW$18, DW_AT_begin_line(0x39)
.dwattr DW$18, DW_AT_end_line(0x39)
DW$19 .dwtag DW_TAG_loop_range
.dwattr DW$19, DW_AT_low_pc(DW$L$_OpenInterrupt$3$B)
.dwattr DW$19, DW_AT_high_pc(DW$L$_OpenInterrupt$3$E)
.dwendtag DW$18
.dwattr DW$15, DW_AT_end_file("inth.c")
.dwattr DW$15, DW_AT_end_line(0x4a)
.dwattr DW$15, DW_AT_end_column(0x01)
.dwendentry
.dwendtag DW$15
.sect ".text"
.align 4
.clink
.armfunc _InterruptInit
.state32
.global _InterruptInit
DW$20 .dwtag DW_TAG_subprogram, DW_AT_name("InterruptInit"), DW_AT_symbol_name("_InterruptInit")
.dwattr DW$20, DW_AT_low_pc(_InterruptInit)
.dwattr DW$20, DW_AT_high_pc(0x00)
.dwattr DW$20, DW_AT_begin_file("inth.c")
.dwattr DW$20, DW_AT_begin_line(0x53)
.dwattr DW$20, DW_AT_begin_column(0x06)
.dwpsn "inth.c",84,1
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: InterruptInit *
;* *
;* 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 + 4 Auto + 4 Save = 8 byte *
;*****************************************************************************
_InterruptInit:
;* --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 26, 14
STMFD SP!, {A4, LR}
.dwcfa 0x0e, 4
.dwcfa 0x80, 14, 1
.dwcfa 0x0e, 8
.dwcfa 0x80, 3, 2
.dwcfa 0x0e, 8
DW$21 .dwtag DW_TAG_variable, DW_AT_name("inthNumber"), DW_AT_symbol_name("_inthNumber")
.dwattr DW$21, DW_AT_type(*DW$T$11)
.dwattr DW$21, DW_AT_location[DW_OP_breg13 0]
.dwpsn "inth.c",85,16
MOV V9, #0 ; |85|
STR V9, [SP, #0] ; |85|
.dwpsn "inth.c",87,6
MOV V9, #0 ; |87|
STR V9, [SP, #0] ; |87|
.dwpsn "inth.c",87,20
LDR V9, [SP, #0] ; |87|
CMP V9, #96 ; |87|
BCS L7 ; |87|
; |87|
;* --------------------------------------------------------------------------*
;* BEGIN LOOP L6
;*
;* Loop source line : 87
;* Loop closing brace source line : 90
;* Known Minimum Trip Count : 1
;* Known Maximum Trip Count : 4294967295
;* Known Max Trip Count Factor : 1
;* --------------------------------------------------------------------------*
L6:
DW$L$_InterruptInit$2$B:
.dwpsn "inth.c",89,5
MOV A1, #0 ; |89|
LDR V9, [SP, #0] ; |89|
LDR A2, CON9 ; |89|
STR A1, [A2, +V9, LSL #2] ; |89|
.dwpsn "inth.c",87,36
LDR V9, [SP, #0] ; |87|
ADD V9, V9, #1 ; |87|
STR V9, [SP, #0] ; |87|
.dwpsn "inth.c",87,20
LDR V9, [SP, #0] ; |87|
CMP V9, #96 ; |87|
BCC L6 ; |87|
; |87|
DW$L$_InterruptInit$2$E:
;* --------------------------------------------------------------------------*
L7:
.dwpsn "inth.c",91,7
MOV V9, #0 ; |91|
STR V9, [SP, #0] ; |91|
.dwpsn "inth.c",91,21
LDR V9, [SP, #0] ; |91|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -