📄 rxhostcomm.asm
字号:
B .S1 L12 ; |457|
NOP 5
; BRANCH OCCURS ; |457|
;** --------------------------------------------------------------------------*
L13:
;** -----------------------g25:
;** 423 ----------------------- LOG_printf(&trace, "Sending the data...!");
;** 425 ----------------------- exit((-12));
;*** ; the preceding call never returns
;** ----------------------- #pragma LOOP_FLAGS(4096u)
.line 330
MVKL .S1 _LOG_printf,A0 ; |423|
MVKH .S1 _LOG_printf,A0 ; |423|
CALL .S2X A0 ; |423|
MVKL .S2 SL1+0,B4 ; |423|
MVKL .S2 RL7,B3 ; |423|
MVKH .S2 SL1+0,B4 ; |423|
MVKL .S1 _trace,A4 ; |423|
STW .D2T2 B4,*+SP(4) ; |423|
|| MVKH .S2 RL7,B3 ; |423|
|| MVKH .S1 _trace,A4 ; |423|
RL7: ; CALL OCCURS ; |423|
.line 332
MVKL .S2 _exit,B4 ; |425|
MVKH .S2 _exit,B4 ; |425|
CALL .S2 B4 ; |425|
MVKL .S2 RL8,B3 ; |425|
MVKH .S2 RL8,B3 ; |425|
MVK .S1 0xfffffff4,A4 ; |425|
NOP 2
RL8: ; CALL OCCURS ; |425|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: Bad loop structure
;*----------------------------------------------------------------------------*
L14:
;** -----------------------g27:
;** 425 ----------------------- goto g27;
B .S1 L14 ; |425|
NOP 5
; BRANCH OCCURS ; |425|
;** --------------------------------------------------------------------------*
L15:
;** -----------------------g28:
;** 339 ----------------------- SEM_pend(K$53, K$51);
;** 341 ----------------------- if ( !HostCommState.cNewFrameReady ) goto g50;
.line 246
MVKL .S2 _SEM_pend,B5 ; |339|
MVKH .S2 _SEM_pend,B5 ; |339|
CALL .S2 B5 ; |339|
LDW .D2T1 *+SP(60),A4 ; |339|
MVKL .S2 RL9,B3 ; |339|
MVK .S2 0xffffffff,B4
MVKH .S2 RL9,B3 ; |339|
NOP 1
RL9: ; CALL OCCURS ; |339|
.line 248
MVKL .S1 _HostCommState+29,A0 ; |341|
MVKH .S1 _HostCommState+29,A0 ; |341|
LDB .D1T1 *A0,A1 ; |341|
NOP 4
[!A1] B .S1 L27 ; |341|
NOP 5
; BRANCH OCCURS ; |341|
;** --------------------------------------------------------------------------*
;** 343 ----------------------- HostCommState.cNewFrameReady = 0;
;** 346 ----------------------- if ( iStatus = RTDX_write(K$58, HostCommState.puiFrameNbr, 4u) ) goto g33;
.line 250
MVKL .S2 _HostCommState+29,B4 ; |343|
MVKH .S2 _HostCommState+29,B4 ; |343|
|| ZERO .D2 B5 ; |343|
STB .D2T2 B5,*B4 ; |343|
.line 253
MVKL .S2 _RTDX_write,B5 ; |346|
MVKH .S2 _RTDX_write,B5 ; |346|
|| MVKL .S1 _HostCommState+20,A0 ; |346|
CALL .S2 B5 ; |346|
|| MVKH .S1 _HostCommState+20,A0 ; |346|
LDW .D1T2 *A0,B4 ; |346|
MVKL .S2 RL10,B3 ; |346|
MVKH .S2 RL10,B3 ; |346|
MV .D1 A12,A4 ; |346|
MVK .S1 0x4,A6 ; |346|
RL10: ; CALL OCCURS ; |346|
MV .D1 A4,A1 ; |346|
[ A1] B .S1 L17 ; |346|
NOP 5
; BRANCH OCCURS ; |346|
;** --------------------------------------------------------------------------*
;** 352 ----------------------- exit((-2));
;*** ; the preceding call never returns
;** ----------------------- #pragma LOOP_FLAGS(4096u)
.line 259
MVKL .S1 _exit,A0 ; |352|
MVKH .S1 _exit,A0 ; |352|
CALL .S2X A0 ; |352|
MVKL .S2 RL11,B3 ; |352|
MVKH .S2 RL11,B3 ; |352|
MVK .S1 0xfffffffe,A4 ; |352|
NOP 2
RL11: ; CALL OCCURS ; |352|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: Bad loop structure
;*----------------------------------------------------------------------------*
L16:
;** -----------------------g32:
;** 352 ----------------------- goto g32;
B .S1 L16 ; |352|
NOP 5
; BRANCH OCCURS ; |352|
;** --------------------------------------------------------------------------*
L17:
;** -----------------------g33:
;** 356 ----------------------- L$2 = 4;
;** ----------------------- U$75 = &pH_a[-2];
;** ----------------------- U$69 = &pH_pre_i[-2];
;** ----------------------- U$64 = &pH_pre_r[-2];
;** ----------------------- #pragma MUST_ITERATE(4, 4, 4)
;** ----------------------- #pragma LOOP_FLAGS(4096u)
;** -----------------------g35:
;** 360 ----------------------- C$7 = *(U$69 += 2);
;** 360 ----------------------- C$6 = *(U$64 += 2);
;** 360 ----------------------- *(U$75 += 2) = C$6*C$6+C$7*C$7;
;** 360 ----------------------- C$5 = U$69[1];
;** 360 ----------------------- C$4 = U$64[1];
;** 360 ----------------------- U$75[1] = C$4*C$4+C$5*C$5;
;** 362 ----------------------- if ( --L$2 ) goto g35;
.line 263
NOP 1
MVC .S2 CSR,B8
MVKL .S2 _pH_pre_i-8,B4
MVKL .S1 _pH_pre_r-8,A3
|| MVKH .S2 _pH_pre_i-8,B4
|| AND .L2 -2,B8,B6
ADD .D2 SP,16,B5
|| MVKH .S1 _pH_pre_r-8,A3
|| MVC .S2 B6,CSR ; interrupts off
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;*
;* Loop source line : 356
;* Loop opening brace source line : 357
;* Loop closing brace source line : 362
;* Known Minimum Trip Count : 4
;* Known Maximum Trip Count : 4
;* Known Max Trip Count Factor : 4
;* Loop Carried Dependency Bound(^) : 0
;* Unpartitioned Resource Bound : 3
;* Partitioned Resource Bound(*) : 3
;* Resource Partition:
;* A-side B-side
;* .L units 1 1
;* .S units 1 0
;* .D units 3* 3*
;* .M units 2 2
;* .X cross paths 1 1
;* .T address paths 3* 3*
;* Long read paths 1 1
;* Long write paths 0 0
;* Logical ops (.LS) 0 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) 2 2
;*
;* Searching for software pipeline schedule at ...
;* ii = 3 Schedule found with 5 iterations in parallel
;* Done
;*
;* Epilog not entirely removed
;* Collapsed epilog stages : 1
;*
;* Prolog not entirely removed
;* Collapsed prolog stages : 3
;*
;* Minimum required memory pad : 0 bytes
;*
;* For further improvement on this loop, try option -mh8
;*
;* Minimum safe trip count : 3
;*----------------------------------------------------------------------------*
L18: ; PIPED LOOP PROLOG
LDW .D2T2 *++B4(8),B6 ; |360| (P) <0,0>
|| B .S1 L19 ; |362| (P) <0,9>
|| LDW .D1T1 *++A3(8),A4 ; |360| (P) <0,0>
MVK .S2 2,B0 ; |356|
|| MV .S1X B5,A0
|| LDW .D2T2 *+B4(4),B6 ; |360| (P) <0,1>
|| LDW .D1T1 *+A3(4),A5 ; |360| (P) <0,1>
MVK .S1 0x3,A2 ; init prolog collapse predicate
|| ADD .D2 4,B5,B5
|| ADD .L1X 1,B0,A1
;** --------------------------------------------------------------------------*
L19: ; PIPED LOOP KERNEL
ADDSP .L1X B7,A4,A5 ; |360| <1,9>
|| [ B0] B .S1 L19 ; |362| <1,9>
|| MPYSP .M1 A5,A5,A4 ; |360| <2,6>
|| MPYSP .M2 B6,B6,B6 ; |360| <2,6>
|| [ A1] LDW .D2T2 *++B4(8),B6 ; |360| <4,0>
|| [ A1] LDW .D1T1 *++A3(8),A4 ; |360| <4,0>
ADDSP .L2X B6,A4,B7 ; |360| <1,10>
|| [ A1] LDW .D2T2 *+B4(4),B6 ; |360| <4,1>
|| [ A1] LDW .D1T1 *+A3(4),A5 ; |360| <4,1>
[ A2] SUB .S1 A2,1,A2 ; <0,14>
|| [ A1] SUB .L1 A1,1,A1 ; <0,14>
|| [!A2] STW .D1T1 A5,*++A0(8) ; |360| <0,14>
|| [!A2] STW .D2T2 B7,*++B5(8) ; |360| <0,14>
|| [ B0] SUB .S2 B0,1,B0 ; |362| <2,8>
|| MPYSP .M1 A4,A4,A4 ; |360| <3,5>
|| MPYSP .M2 B6,B6,B7 ; |360| <3,5>
;** --------------------------------------------------------------------------*
L20: ; PIPED LOOP EPILOG
;** 364 ----------------------- if ( RTDX_writing == NULL ) goto g40;
;** ----------------------- #pragma LOOP_FLAGS(5120u)
MPYSP .M1 A5,A5,A4 ; |360| (E) <4,6>
|| MPYSP .M2 B6,B6,B6 ; |360| (E) <4,6>
|| ADDSP .L1X B7,A4,A3 ; |360| (E) <3,9>
ADDSP .L2X B6,A4,B4 ; |360| (E) <3,10>
STW .D2T2 B7,*++B5(8) ; |360| (E) <2,14>
|| STW .D1T1 A5,*++A0(8) ; |360| (E) <2,14>
ADDSP .L1X B7,A4,A3 ; |360| (E) <4,9>
ADDSP .L2X B6,A4,B4 ; |360| (E) <4,10>
STW .D1T1 A3,*++A0(8) ; |360| (E) <3,14>
|| STW .D2T2 B4,*++B5(8) ; |360| (E) <3,14>
;** --------------------------------------------------------------------------*
NOP 1
MVC .S2 B8,CSR ; interrupts on
STW .D2T2 B4,*++B5(8) ; |360| (E) <4,14>
|| STW .D1T1 A3,*++A0(8) ; |360| (E) <4,14>
.line 271
MVKL .S1 _RTDX_writing,A0 ; |364|
MVKH .S1 _RTDX_writing,A0 ; |364|
LDW .D1T1 *A0,A1 ; |364|
NOP 4
[!A1] B .S2 L22 ; |364|
NOP 5
; BRANCH OCCURS ; |364|
;*----------------------------------------------------------------------------*
;* SOFTWARE PIPELINE INFORMATION
;* Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L21:
;** -----------------------g39:
;** 368 ----------------------- SEM_pend(K$29, 1u);
;** 369 ----------------------- if ( RTDX_writing ) goto g39;
.line 275
MVKL .S2 _SEM_pend,B5 ; |368|
MVKH .S2 _SEM_pend,B5 ; |368|
CALL .S2 B5 ; |368|
MVKL .S2 RL12,B3 ; |368|
MVK .S2 0x1,B4 ; |368|
MVKH .S2 RL12,B3 ; |368|
MV .D1 A10,A4 ; |368|
NOP 1
RL12: ; CALL OCCURS ; |368|
.line 276
MVKL .S1 _RTDX_writing,A0 ; |369|
MVKH .S1 _RTDX_writing,A0 ; |369|
LDW .D1T1 *A0,A1 ; |369|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -