📄 main.asm
字号:
.field 1,16 ; _B[29][2] @ 4672
.field 1,16 ; _B[29][3] @ 4688
.field 1,16 ; _B[29][4] @ 4704
.field 1,16 ; _B[29][5] @ 4720
.field 1,16 ; _B[29][6] @ 4736
.field 1,16 ; _B[29][7] @ 4752
.field 1,16 ; _B[29][8] @ 4768
.field 2,16 ; _B[29][9] @ 4784
IR_2: .set 600
.sect ".cinit"
.align 8
.field IR_3,32
.field _max+0,32
.field 0,32 ; _max[0] @ 0
IR_3: .set 4
DW$1 .dwtag DW_TAG_subprogram, DW_AT_name("printf"), DW_AT_symbol_name("_printf")
.dwattr DW$1, DW_AT_type(*DW$T$10)
.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$58)
DW$3 .dwtag DW_TAG_unspecified_parameters
.dwendtag DW$1
DW$4 .dwtag DW_TAG_subprogram, DW_AT_name("matrix_mpys"), DW_AT_symbol_name("_matrix_mpys")
.dwattr DW$4, DW_AT_type(*DW$T$10)
.dwattr DW$4, DW_AT_declaration(0x01)
.dwattr DW$4, DW_AT_external(0x01)
.global _A
_A: .usect ".far",600,8
DW$5 .dwtag DW_TAG_variable, DW_AT_name("A"), DW_AT_symbol_name("_A")
.dwattr DW$5, DW_AT_location[DW_OP_addr _A]
.dwattr DW$5, DW_AT_type(*DW$T$48)
.dwattr DW$5, DW_AT_external(0x01)
.global _B
_B: .usect ".far",600,8
DW$6 .dwtag DW_TAG_variable, DW_AT_name("B"), DW_AT_symbol_name("_B")
.dwattr DW$6, DW_AT_location[DW_OP_addr _B]
.dwattr DW$6, DW_AT_type(*DW$T$50)
.dwattr DW$6, DW_AT_external(0x01)
.global _C
_C: .usect ".far",400,8
DW$7 .dwtag DW_TAG_variable, DW_AT_name("C"), DW_AT_symbol_name("_C")
.dwattr DW$7, DW_AT_location[DW_OP_addr _C]
.dwattr DW$7, DW_AT_type(*DW$T$54)
.dwattr DW$7, DW_AT_external(0x01)
.global _max
_max: .usect ".far",12,8
DW$8 .dwtag DW_TAG_variable, DW_AT_name("max"), DW_AT_symbol_name("_max")
.dwattr DW$8, DW_AT_location[DW_OP_addr _max]
.dwattr DW$8, DW_AT_type(*DW$T$63)
.dwattr DW$8, DW_AT_external(0x01)
; D:\CCStudio_v3.1\C6000\cgtools\bin\opt6x.exe C:\DOCUME~1\Linda\LOCALS~1\Temp\TI62010 C:\DOCUME~1\Linda\LOCALS~1\Temp\TI6204
.sect ".text"
.global _matrix_mpyc
DW$9 .dwtag DW_TAG_subprogram, DW_AT_name("matrix_mpyc"), DW_AT_symbol_name("_matrix_mpyc")
.dwattr DW$9, DW_AT_low_pc(_matrix_mpyc)
.dwattr DW$9, DW_AT_high_pc(0x00)
.dwattr DW$9, DW_AT_begin_file("D:\CCStudio_v3.1\MyProjects\matrix\matrix_mpyc.c")
.dwattr DW$9, DW_AT_begin_line(0x05)
.dwattr DW$9, DW_AT_begin_column(0x06)
.dwpsn "D:\CCStudio_v3.1\MyProjects\matrix\matrix_mpyc.c",6,1
.dwfde DW$CIE
;******************************************************************************
;* FUNCTION NAME: _matrix_mpyc *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14, *
;* A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12, *
;* B13,DP,SP,A16,A17,A18,A19,A20,A21,A22,A23,A24, *
;* A25,A26,A27,A28,A29,A30,A31,B16,B17,B18,B19,B20, *
;* B21,B22,B23,B24,B25,B26,B27,B28,B29,B30,B31 *
;* Regs Used : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14, *
;* A15,B0,B1,B2,B3,B4,B5,B6,B7,B8,B9,B10,B11,B12, *
;* B13,DP,SP,A16,A17,A18,A19,A20,A21,A22,A23,A24, *
;* A25,A26,A27,A28,A29,A30,A31,B16,B17,B18,B19,B20, *
;* B21,B22,B23,B24,B25,B26,B27,B28,B29,B30,B31 *
;* Local Frame Size : 0 Args + 164 Auto + 44 Save = 208 byte *
;******************************************************************************
;******************************************************************************
;* *
;* Using -g (debug) with optimization (-o3) may disable key optimizations! *
;* *
;******************************************************************************
_matrix_mpyc:
;** --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 126, 19
ADDK .S2 -208,SP ; |6|
|| MV .L1X SP,A31 ; |6|
STW .D2T1 A15,*+SP(208)
.dwcfa 0x80, 15, 0
STDW .D2T2 B13:B12,*+SP(200)
.dwcfa 0x80, 28, 1
.dwcfa 0x80, 29, 2
STDW .D2T2 B11:B10,*+SP(192)
.dwcfa 0x80, 26, 3
.dwcfa 0x80, 27, 4
STW .D2T2 B3,*+SP(188)
.dwcfa 0x80, 19, 5
STW .D1T1 A14,*-A31(24)
.dwcfa 0x80, 14, 6
STDW .D1T1 A13:A12,*-A31(32)
.dwcfa 0x80, 12, 7
.dwcfa 0x80, 13, 8
STDW .D1T1 A11:A10,*-A31(40)
.dwcfa 0x80, 10, 9
.dwcfa 0x80, 11, 10
DW$10 .dwtag DW_TAG_formal_parameter, DW_AT_name("A"), DW_AT_symbol_name("_A")
.dwattr DW$10, DW_AT_type(*DW$T$20)
.dwattr DW$10, DW_AT_location[DW_OP_reg4]
DW$11 .dwtag DW_TAG_formal_parameter, DW_AT_name("B"), DW_AT_symbol_name("_B")
.dwattr DW$11, DW_AT_type(*DW$T$22)
.dwattr DW$11, DW_AT_location[DW_OP_reg20]
DW$12 .dwtag DW_TAG_formal_parameter, DW_AT_name("C"), DW_AT_symbol_name("_C")
.dwattr DW$12, DW_AT_type(*DW$T$24)
.dwattr DW$12, DW_AT_location[DW_OP_reg6]
DW$13 .dwtag DW_TAG_formal_parameter, DW_AT_name("max"), DW_AT_symbol_name("_max")
.dwattr DW$13, DW_AT_type(*DW$T$25)
.dwattr DW$13, DW_AT_location[DW_OP_reg22]
DW$14 .dwtag DW_TAG_variable, DW_AT_name("max"), DW_AT_symbol_name("_max")
.dwattr DW$14, DW_AT_type(*DW$T$55)
.dwattr DW$14, DW_AT_location[DW_OP_reg18]
DW$15 .dwtag DW_TAG_variable, DW_AT_name("C"), DW_AT_symbol_name("_C")
.dwattr DW$15, DW_AT_type(*DW$T$53)
.dwattr DW$15, DW_AT_location[DW_OP_breg31 144]
DW$16 .dwtag DW_TAG_variable, DW_AT_name("B"), DW_AT_symbol_name("_B")
.dwattr DW$16, DW_AT_type(*DW$T$49)
.dwattr DW$16, DW_AT_location[DW_OP_breg31 4]
DW$17 .dwtag DW_TAG_variable, DW_AT_name("A"), DW_AT_symbol_name("_A")
.dwattr DW$17, DW_AT_type(*DW$T$47)
.dwattr DW$17, DW_AT_location[DW_OP_reg21]
DW$18 .dwtag DW_TAG_variable, DW_AT_name("i"), DW_AT_symbol_name("_i")
.dwattr DW$18, DW_AT_type(*DW$T$10)
.dwattr DW$18, DW_AT_location[DW_OP_reg17]
DW$19 .dwtag DW_TAG_variable, DW_AT_name("w"), DW_AT_symbol_name("_w")
.dwattr DW$19, DW_AT_type(*DW$T$10)
.dwattr DW$19, DW_AT_location[DW_OP_regx 0x44]
DW$20 .dwtag DW_TAG_variable, DW_AT_name("sum"), DW_AT_symbol_name("_sum")
.dwattr DW$20, DW_AT_type(*DW$T$10)
.dwattr DW$20, DW_AT_location[DW_OP_reg30]
MVK .S1 360,A5
MVK .S1 380,A5
|| ADD .L1X A5,B4,A7
MVK .S1 400,A5
|| ADD .L1X A5,B4,A7
|| STW .D2T1 A7,*+SP(12)
MVK .S1 420,A5
|| ADD .L1X A5,B4,A7
|| STW .D2T1 A7,*+SP(16)
MVK .S1 440,A5
|| ADD .L1X A5,B4,A7
|| STW .D2T1 A7,*+SP(20)
ADD .L1X A5,B4,A7
|| STW .D2T1 A7,*+SP(24)
STW .D2T1 A7,*+SP(28)
|| MVK .S1 460,A5
|| MV .L2X A4,B5 ; |6|
ADDAD .D2 B5,4,B7
|| ADD .L1X A5,B4,A7
STW .D2T1 A7,*+SP(32)
ADDAD .D2 B5,6,B8
|| MVK .S1 480,A5
|| MV .L2 B4,B16 ; |6|
ADDAD .D2 B16,20,B17
|| ADD .L1X A5,B4,A7
STW .D2T1 A7,*+SP(36)
ADDAD .D2 B16,30,B6
|| MVK .S1 520,A5
|| MV .L2 B6,B2 ; |6|
ADD .D2 B5,16,B5
|| ADD .L1X A5,B4,A7
STW .D2T1 A7,*+SP(44)
STW .D2T2 B17,*+SP(72)
|| MVK .S1 340,A5
STW .D2T2 B7,*+SP(40)
|| ADD .L1X A5,B4,A7
STW .D2T1 A7,*+SP(48)
STW .D2T2 B6,*+SP(80)
|| MVK .S1 580,A5
STW .D2T2 B5,*+SP(56)
|| ADD .L1X A5,B4,A7
STW .D2T1 A7,*+SP(60)
ADDAD .D2 B16,15,B17
STW .D2T2 B4,*+SP(4) ; |6|
|| MVK .S2 560,B7
STW .D2T2 B8,*+SP(52)
|| MVK .S1 320,A5
|| ADD .L2 B7,B4,B7
STW .D2T2 B7,*+SP(84)
|| MVK .S1 300,A5
|| ADD .L1X A5,B4,A7
STW .D2T1 A7,*+SP(64)
|| ADD .L1X A5,B4,A5
STW .D2T1 A5,*+SP(68)
STW .D2T1 A4,*+SP(8) ; |6|
|| MV .L1X B4,A3 ; |6|
LDW .D2T2 *B2,B3
|| MVK .S1 280,A3
|| ADDAD .D1 A3,25,A7
STW .D2T1 A7,*+SP(76)
|| ADD .L1X A3,B4,A5
|| MVK .S2 180,B6
STW .D2T1 A5,*+SP(88)
|| MVK .S2 140,B5
STW .D2T2 B17,*+SP(92)
|| ADD .L2 B5,B16,B6
|| ADD .S2 B6,B16,B5
STW .D2T2 B6,*+SP(132)
|| MVK .S2 500,B9
|| MV .L1 A4,A8 ; |6|
STW .D2T2 B5,*+SP(128)
|| MVK .S1 260,A3
|| ADD .D1 A8,24,A7
|| MVK .S2 540,B8
STW .D2T1 A7,*+SP(96)
|| ADD .L2 B8,B4,B4
|| ADD .L1X A3,B4,A5
|| ADD .S2 B9,B4,B7
STW .D2T2 B4,*+SP(100)
STW .D2T1 A5,*+SP(108)
STW .D2T2 B7,*+SP(104)
ADDAW .D2 B16,25,B8
ADDAD .D2 B16,10,B4
|| ADDAD .D1 A8,5,A7
STW .D2T1 A7,*+SP(116)
|| ADDAD .D1 A8,7,A5
|| MVK .S1 220,A3
STW .D2T1 A5,*+SP(140)
|| ADD .L1X A3,B16,A4
|| ADD .S1 8,A4,A3
STW .D2T1 A4,*+SP(136)
STW .D2T1 A3,*+SP(120)
STW .D2T2 B8,*+SP(112)
STW .D2T2 B4,*+SP(124)
STW .D2T1 A6,*+SP(144) ; |6|
.dwpsn "D:\CCStudio_v3.1\MyProjects\matrix\matrix_mpyc.c",10,13
MVK .L2 0xa,B5 ; |10|
STW .D2T2 B5,*+SP(152) ; |10|
|| ZERO .L2 B4
STW .D2T2 B4,*+SP(148) ; |10|
.dwpsn "D:\CCStudio_v3.1\MyProjects\matrix\matrix_mpyc.c",10,9
MVK .L2 0x1,B1 ; |10|
;** --------------------------------------------------------------------------*
L1:
LDNDW .D1T1 *A3,A9:A8
LDW .D2T1 *+SP(96),A3
LDW .D2T2 *+SP(52),B16
LDW .D2T2 *+SP(8),B4
LDW .D2T2 *+SP(56),B31
;** --------------------------------------------------------------------------*
;** BEGIN LOOP L2
;** --------------------------------------------------------------------------*
L2:
DW$L$_matrix_mpyc$3$B:
LDW .D2T2 *+SP(40),B30
LDNDW .D1T1 *A3,A21:A20
LDNDW .D2T2 *B16,B27:B26
LDW .D2T2 *+SP(144),B20
LDW .D2T2 *+SP(148),B23
LDW .D2T1 *+SP(116),A30
LDW .D2T2 *+SP(4),B17
LDW .D2T1 *+SP(140),A18
|| MV .L2 B26,B25
LDNDW .D2T2 *B31,B7:B6
LDNDW .D2T2 *B4,B9:B8
LDNDW .D2T2 *B30,B5:B4
|| MV .L1 A20,A9
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -