📄 bsl_ad535.asm
字号:
NOP 1
AND .S1 2,A0,A1 ; |220|
[!A1] B .S1 L25 ; |220|
[!A1] LDW .D1T1 *A5,A0 ; |220|
[ A1] LDW .D1T1 *A3,A0
NOP 3
; BRANCH OCCURS ; |220|
;** --------------------------------------------------------------------------*
NOP 1
AND .S1 A4,A0,A1 ; |325|
[ A1] B .S1 L24 ; |325|
NOP 3
[ A1] ADD .D1 8,A6,A5
[ A1] LDW .D1T1 *A5,A0 ; |220|
; BRANCH OCCURS ; |325|
;** --------------------------------------------------------------------------*
L26:
MVKL .S2 _writeData,B5 ; |331|
MVKH .S2 _writeData,B5 ; |331|
B .S2 B5 ; |331|
|| AND .S1 3,A0,A0 ; |329|
ADDAW .D1 A0,A8,A0 ; |329|
EXTU .S1 A0,24,25,A0 ; |329|
ADDK .S1 640,A0 ; |329|
|| STW .D2T2 B9,*+SP(12) ; |330|
ADD .D1 A0,A0,A0
|| STW .D2T2 B8,*+SP(4) ; |328|
|| MVKL .S2 RL18,B3 ; |331|
STW .D2T1 A0,*+SP(8) ; |329|
|| MVKH .S2 RL18,B3 ; |331|
|| ADD .L2 4,SP,B4 ; |331|
|| MV .D1 A10,A4 ; |331|
|| MVK .S1 0x3,A6 ; |331|
RL18: ; CALL OCCURS ; |331|
;** --------------------------------------------------------------------------*
L27:
LDW .D2T2 *+SP(28),B3 ; |334|
LDW .D2T1 *+SP(20),A10 ; |334|
LDW .D2T1 *+SP(24),A12 ; |334|
LDW .D2T1 *++SP(32),A13 ; |334|
NOP 1
B .S2 B3 ; |334|
NOP 5
; BRANCH OCCURS ; |334|
.sect ".text:_AD535_open"
.clink
.global _AD535_open
;******************************************************************************
;* FUNCTION NAME: _AD535_open *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,B0,B1,B2,B3,B4,*
;* B5,B6,B7,B8,B9,SP *
;* Regs Used : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,B0,B1,B2,B3,B4,*
;* B5,B6,B7,B8,B9,SP *
;* Local Frame Size : 0 Args + 0 Auto + 12 Save = 12 byte *
;******************************************************************************
_AD535_open:
;** --------------------------------------------------------------------------*
STW .D2T1 A11,*SP--(16) ; |272|
MV .D1 A4,A10 ; |272|
|| STW .D2T1 A10,*+SP(8) ; |272|
LDW .D1T1 *+A10(4),A1 ; |276|
STW .D2T2 B3,*+SP(12) ; |272|
MVK .S1 0xffffffff,A11 ; |279|
MVK .S1 0xffffffff,A4 ; |300|
NOP 1
[ A1] B .S1 L28 ; |300|
MVKL .S2 _MCBSP_open,B5 ; |277|
MVK .S2 0x1,B4 ; |277|
MVKL .S2 RL20,B3 ; |277|
MVKH .S2 _MCBSP_open,B5 ; |277|
[ A1] LDW .D2T2 *+SP(12),B3 ; |304|
|| MVKH .S2 RL20,B3 ; |277|
; BRANCH OCCURS ; |300|
;** --------------------------------------------------------------------------*
B .S2 B5 ; |277|
LDW .D1T1 *A10,A4
NOP 4
RL20: ; CALL OCCURS ; |277|
STW .D1T1 A4,*+A10(8) ; |277|
LDW .D1T1 *+A10(8),A0 ; |279|
MV .S1 A11,A4 ; |282|
NOP 3
CMPEQ .L1 A0,A11,A1 ; |279|
[ A1] B .S1 L29 ; |282|
ZERO .D1 A0 ; |281|
[ A1] STW .D1T1 A0,*+A10(4) ; |281|
|| [ A1] LDW .D2T2 *+SP(12),B3 ; |304|
[!A1] LDW .D1T1 *+A10(8),A0 ; |338|
NOP 2
; BRANCH OCCURS ; |282|
;** --------------------------------------------------------------------------*
MVK .S1 1,A3 ; |284|
STW .D1T1 A3,*+A10(4) ; |284|
LDW .D1T1 *+A0(12),A0 ; |338|
NOP 4
MVC .S2 CSR,B4 ; |250|
|| ADD .D1 8,A0,A3 ; |338|
MVC .S2 CSR,B4 ; |251|
|| AND .L2 1,B4,B5 ; |250|
AND .S2 -2,B4,B4 ; |251|
MVC .S2 B4,CSR ; |251|
MVKL .S2 0x10040,B4 ; |343|
|| ZERO .D1 A0 ; |342|
MVKH .S2 0x10040,B4 ; |343|
|| STW .D1T1 A0,*A3 ; |342|
STW .D1T2 B4,*+A3(4) ; |343|
|| MVKL .S1 0x20000001,A4 ; |345|
STW .D1T2 B4,*+A3(8) ; |344|
|| MVKH .S1 0x20000001,A4 ; |345|
STW .D1T1 A4,*+A3(12) ; |345|
STW .D1T1 A0,*+A3(16) ; |346|
STW .D1T1 A0,*+A3(20) ; |347|
STW .D1T1 A0,*+A3(24) ; |348|
|| MVKL .S2 0x12001,B4 ; |350|
STW .D1T1 A0,*+A3(28) ; |349|
|| MVKH .S2 0x12001,B4 ; |350|
MVC .S2 CSR,B4 ; |256|
|| STW .D1T2 B4,*A3 ; |350|
AND .S2 -2,B4,B4 ; |256|
|| AND .L2 1,B5,B5 ; |256|
OR .S2 B5,B4,B4 ; |256|
MVC .S2 B4,CSR ; |256|
MV .D1 A10,A4 ; |296|
LDW .D2T2 *+SP(12),B3 ; |304|
;** --------------------------------------------------------------------------*
L28:
NOP 3
;** --------------------------------------------------------------------------*
L29:
LDW .D2T1 *+SP(8),A10 ; |304|
B .S2 B3 ; |304|
LDW .D2T1 *++SP(16),A11 ; |304|
NOP 4
; BRANCH OCCURS ; |304|
.sect ".text:_AD535_modifyReg"
.clink
.global _AD535_modifyReg
;******************************************************************************
;* FUNCTION NAME: _AD535_modifyReg *
;* *
;* Regs Modified : A0,A1,A2,A3,A5,A6,A7,A8,A9,A10,B0,B2,B3,B4,B5,B6,B7, *
;* B8,B9,SP *
;* Regs Used : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,B0,B2,B3,B4,B5,B6, *
;* B7,B8,B9,SP *
;* Local Frame Size : 0 Args + 12 Auto + 4 Save = 16 byte *
;******************************************************************************
_AD535_modifyReg:
;** --------------------------------------------------------------------------*
MVK .S1 0xfe,A8 ; |248|
MVK .S1 -1,A0 ; |248|
|| CMPEQ .L1X B4,5,A1
CMPEQ .L1 A4,A0,A1
|| [!A1] MVK .S1 0xff,A8 ; |248|
|| MVKL .S2 _writeData,B7 ; |256|
[ A1] B .S1 L33 ; |248|
|| EXT .S2 B4,24,16,B5
MVK .S2 8192,B0 ; |255|
MVKL .S2 RL22,B3 ; |256|
|| MV .D2 B3,B2 ; |240|
MVK .S2 0x1,B9 ; |254|
MVKH .S2 _writeData,B7 ; |256|
|| MV .S1X B6,A2
|| ZERO .L2 B8 ; |253|
|| STW .D2T1 A10,*SP--(16) ; |240|
ADD .D2 B0,B5,B5 ; |255|
|| ADD .L2 4,SP,B4 ; |256|
|| MVKH .S2 RL22,B3 ; |256|
|| MVK .S1 0x3,A6 ; |256|
|| MV .L1X B5,A9 ; |255|
|| MV .D1 A6,A10
; BRANCH OCCURS ; |248|
;** --------------------------------------------------------------------------*
B .S2 B7 ; |256|
STW .D2T2 B5,*+SP(12) ; |255|
STW .D2T2 B8,*+SP(4) ; |253|
STW .D2T2 B9,*+SP(8) ; |254|
NOP 2
RL22: ; CALL OCCURS ; |256|
LDW .D1T1 *+A4(8),A0
NOP 4
ADD .D1 12,A0,A5
LDW .D1T1 *A5,A7
NOP 4
ADD .D1 8,A7,A3
LDW .D1T1 *A3,A0 ; |220|
NOP 4
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;*
;* Loop source line : 51
;* Loop opening brace source line : 0
;* Loop closing brace source line : 0
;* Known Minimum Trip Count : 1
;* Known Max Trip Count Factor : 1
;* Loop Carried Dependency Bound(^) : 7
;* Unpartitioned Resource Bound : 1
;* Partitioned Resource Bound(*) : 1
;* Resource Partition:
;* A-side B-side
;* .L units 0 0
;* .S units 0 1*
;* .D units 1* 0
;* .M units 0 0
;* .X cross paths 0 0
;* .T address paths 1* 0
;* Long read paths 0 0
;* Long write paths 0 0
;* Logical ops (.LS) 1 0 (.L or .S unit)
;* Addition ops (.LSD) 0 1 (.L or .S or .D unit)
;* Bound(.L .S .LS) 1* 1*
;* Bound(.L .S .D .LS .LSD) 1* 1*
;*
;* Disqualified loop: Loop carried dependency bound too large
;*----------------------------------------------------------------------------*
L30:
AND .S1 2,A0,A1 ; |220|
[!A1] B .S1 L30 ; |220|
[!A1] LDW .D1T1 *A3,A0 ; |220|
[ A1] LDW .D1T1 *+A5(4),A3 ; |208|
NOP 3
; BRANCH OCCURS ; |220|
;** --------------------------------------------------------------------------*
MVK .S1 0xffffff00,A5 ; |259|
LDW .D1T1 *A3,A0
NOP 4
SHRU .S1 A0,8,A1
[!A1] B .S1 L32 ; |259|
[ A1] ADD .D1 8,A7,A6
[ A1] LDW .D1T1 *A6,A0 ; |220|
NOP 3
; BRANCH OCCURS ; |259|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;*
;* Loop source line : 51
;* Loop opening brace source line : 0
;* Loop closing brace source line : 0
;* Known Minimum Trip Count : 1
;* Known Max Trip Count Factor : 1
;* Loop Carried Dependency Bound(^) : 7
;* Unpartitioned Resource Bound : 1
;* Partitioned Resource Bound(*) : 1
;* Resource Partition:
;* A-side B-side
;*
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -