📄 iir32_emac.s.list
字号:
0x00000154: ace35ade mac.l a6,d5,<<,-(a3),a6,ACC2 ;ACC2+=a6*d5; a6=*--pCurCoef;
0x00000158: 97fc00000004 suba.l #4,a3 ;pCurCoef--;
0x0000015e: a80e0ac0 mac.l a6,d4,<<,ACC0 ;ACC0+=a6*d4;
0x00000162: ac635ace mac.l a6,d5,<<,-(a3),a6,ACC1 ;ACC1+=a6*d5; a6=*--pCurCoef;
0x00000166: 97fc00000004 suba.l #4,a3 ;pCurCoef--;
0x0000016c: aa0e0ac0 mac.l a6,d5,<<,ACC0 ;ACC0+=a6*d5;
0x00000170: 600000fc bra .ENDBUFx ;
;}
.CONT ;if (N!=i) {
0x00000174: a6993ace mac.l a6,d3,<<,(a1)+,d3,ACC0 ;ACC0+=a6*d3; d3=*pCurX++;
0x00000178: a88e0ac0 mac.l a6,d4,<<,ACC1 ;ACC1+=a6*d4;
0x0000017c: aa0e0ad0 mac.l a6,d5,<<,ACC2 ;ACC2+=a6*d5;
0x00000180: ac636ade mac.l a6,d6,<<,-(a3),a6,ACC3 ;ACC3+=a6*d6; a6=*--pCurCoef;
0x00000184: 2401 move.l d1,d2
0x00000186: 5882 addq.l #4,d2
;
.FORk11 ;for(k=i+4; k<N; k+=4) {
0x00000188: b480 cmp.l d0,d2 ;
0x0000018a: 64000076 bcc .ENDFORk11 ;
0x0000018e: 97fc00000004 suba.l #4,a3 ;pCurCoef--;
0x00000194: d3fc00000004 adda.l #4,a1 ;pCurX++;
0x0000019a: a8994ace mac.l a6,d4,<<,(a1)+,d4,ACC0 ;ACC0+=a6*d4; d4=*pCurX++;
0x0000019e: aa8e0ac0 mac.l a6,d5,<<,ACC1 ;ACC1+=a6*d5;
0x000001a2: ac0e0ad0 mac.l a6,d6,<<,ACC2 ;ACC2+=a6*d6;
0x000001a6: ac633ade mac.l a6,d3,<<,-(a3),a6,ACC3 ;ACC3+=a6*d3; a6=*--pCurCoef;
0x000001aa: 97fc00000004 suba.l #4,a3 ;pCurCoef--;
0x000001b0: d3fc00000004 adda.l #4,a1 ;pCurX++;
0x000001b6: aa995ace mac.l a6,d5,<<,(a1)+,d5,ACC0 ;ACC0+=a6*d5; d5=*pCurX++;
0x000001ba: ac8e0ac0 mac.l a6,d6,<<,ACC1 ;ACC1+=a6*d6;
0x000001be: a60e0ad0 mac.l a6,d3,<<,ACC2 ;ACC2+=a6*d3;
0x000001c2: ac634ade mac.l a6,d4,<<,-(a3),a6,ACC3 ;ACC3+=a6*d4; a6=*--pCurCoef;
0x000001c6: 97fc00000004 suba.l #4,a3 ;pCurCoef--;
0x000001cc: d3fc00000004 adda.l #4,a1 ;pCurX++;
0x000001d2: ac996ace mac.l a6,d6,<<,(a1)+,d6,ACC0 ;ACC0+=a6*d6; d6=*pCurX++;
0x000001d6: a68e0ac0 mac.l a6,d3,<<,ACC1 ;ACC1+=a6*d3;
0x000001da: a80e0ad0 mac.l a6,d4,<<,ACC2 ;ACC2+=a6*d4;
0x000001de: ac635ade mac.l a6,d5,<<,-(a3),a6,ACC3 ;ACC3+=a6*d5; a6=*--pCurCoef;
0x000001e2: 97fc00000004 suba.l #4,a3 ;pCurCoef--;
0x000001e8: d3fc00000004 adda.l #4,a1 ;pCurX++;
0x000001ee: a6993ace mac.l a6,d3,<<,(a1)+,d3,ACC0 ;ACC0+=a6*d3; d3=*pCurX++;
0x000001f2: a88e0ac0 mac.l a6,d4,<<,ACC1 ;ACC1+=a6*d4;
0x000001f6: aa0e0ad0 mac.l a6,d5,<<,ACC2 ;ACC2+=a6*d5;
0x000001fa: ac636ade mac.l a6,d6,<<,-(a3),a6,ACC3 ;ACC3+=a6*d6; a6=*--pCurCoef;
0x000001fe: 5882 addq.l #4,d2 ;
0x00000200: 6086 bra .FORk11 ;
.ENDFORk11 ;}
;
0x00000202: 97fc00000004 suba.l #4,a3 ;pCurCoef--;
0x00000208: d3fc00000004 adda.l #4,a1 ;pCurX++;
0x0000020e: 2400 move.l d0,d2 ;
0x00000210: 5382 subq.l #1,d2
0x00000212: 028200000003 andi.l #3,d2
.FORk12 ;for(k=(N-1)%4; k>0; k--){
0x00000218: 0c8200000000 cmpi.l #0,d2 ;
0x0000021e: 6700002a beq .ENDFORk12 ;
0x00000222: a80e0ac0 mac.l a6,d4,<<,ACC0 ;ACC0+=a6*d4;
0x00000226: aa8e0ac0 mac.l a6,d5,<<,ACC1 ;ACC1+=a6*d5;
0x0000022a: ac0e0ad0 mac.l a6,d6,<<,ACC2 ;ACC2+=a6*d6;
0x0000022e: ac633ade mac.l a6,d3,<<,-(a3),a6,ACC3 ;ACC3+=a6*d3; a6=*--pCurCoef;
0x00000232: 2805 move.l d5,d4 ;d4=d5;
0x00000234: 2a06 move.l d6,d5 ;d5=d6;
0x00000236: 2c03 move.l d3,d6 ;d6=d3;
0x00000238: 97fc00000004 suba.l #4,a3 ;pCurCoef--;
0x0000023e: 2619 move.l (a1)+,d3 ;d3=*pCurX++;
0x00000240: d3fc00000004 adda.l #4,a1 ;pCurX++;
0x00000246: 5382 subq.l #1,d2 ;
0x00000248: 60ce bra .FORk12 ;
.ENDFORk12 ;}
;
0x0000024a: a80e0ac0 mac.l a6,d4,<<,ACC0 ;ACC0+=a6*d4;
0x0000024e: aa8e0ac0 mac.l a6,d5,<<,ACC1 ;ACC1+=a6*d5;
0x00000252: ace36ade mac.l a6,d6,<<,-(a3),a6,ACC2 ;ACC2+=a6*d6; a6=*--pCurCoef;
0x00000256: 97fc00000004 suba.l #4,a3 ;pCurCoef--;
0x0000025c: aa0e0ac0 mac.l a6,d5,<<,ACC0 ;ACC0+=a6*d5;
0x00000260: ac636ace mac.l a6,d6,<<,-(a3),a6,ACC1 ;ACC1+=a6*d6; a6=*--pCurCoef;
0x00000264: 97fc00000004 suba.l #4,a3 ;pCurCoef--;
0x0000026a: ac0e0ac0 mac.l a6,d6,<<,ACC0 ;ACC0+=a6*d6
.ENDBUFx ;}
0x0000026e: 2c52 move.l (a2),a6 ;pCurCoef=pIIR->pIirCoef+i*2-6;
0x00000270: e389 lsl.l #1,d1
0x00000272: 47f61ce8 lea (-24,a6,d1.l*4),a3
0x00000276: e289 lsr.l #1,d1
0x00000278: 2c6a0008 move.l 8(a2),a6 ;pPredY=pIIR->pIirHistory+N*2-3;
0x0000027c: e388 lsl.l #1,d0
0x0000027e: 4bf60cf4 lea (-12,a6,d0.l*4),a5
0x00000282: e288 lsr.l #1,d0
0x00000284: 2c65 move.l -(a5),a6 ;a6=*--pPredY;
0x00000286: 9bfc00000004 suba.l #4,a5 ;pPredY--;
0x0000028c: 261b move.l (a3)+,d3 ;d3=*pCurCoef++;
0x0000028e: d7fc00000004 adda.l #4,a3 ;pCurCoef++;
0x00000294: 281b move.l (a3)+,d4 ;d4=*pCurCoef++;
0x00000296: d7fc00000004 adda.l #4,a3 ;pCurCoef++;
0x0000029c: 2a1b move.l (a3)+,d5 ;d5=*pCurCoef++;
0x0000029e: d7fc00000004 adda.l #4,a3 ;pCurCoef++;
0x000002a4: 2c1b move.l (a3)+,d6 ;d6=*pCurCoef++;
0x000002a6: d7fc00000004 adda.l #4,a3 ;pCurCoef++;
0x000002ac: 2401 move.l d1,d2 ;
0x000002ae: 5882 addq.l #4,d2
;
.FORk13 ;for(k=i+4; k<=N; k+=4){
0x000002b0: b480 cmp.l d0,d2 ;
0x000002b2: 62000076 bhi .ENDFORk13 ;
0x000002b6: a69b3ace mac.l a6,d3,<<,(a3)+,d3,ACC0 ;ACC0+=a6*d3; d3=*pCurCoef++;
0x000002ba: a88e0ac0 mac.l a6,d4,<<,ACC1 ;ACC1+=a6*d4;
0x000002be: aa0e0ad0 mac.l a6,d5,<<,ACC2 ;ACC2+=a6*d5;
0x000002c2: ac656ade mac.l a6,d6,<<,-(a5),a6,ACC3 ;ACC3+=a6*d6; a5=*--pPredY;
0x000002c6: 9bfc00000004 suba.l #4,a5 ;pPredY--;
0x000002cc: d7fc00000004 adda.l #4,a3 ;pCurCoef++;
0x000002d2: a89b4ace mac.l a6,d4,<<,(a3)+,d4,ACC0 ;ACC0+=a6*d4; d4=*pCurCoef++;
0x000002d6: aa8e0ac0 mac.l a6,d5,<<,ACC1 ;ACC1+=a6*d5;
0x000002da: ac0e0ad0 mac.l a6,d6,<<,ACC2 ;ACC2+=a6*d6;
0x000002de: ac653ade mac.l a6,d3,<<,-(a5),a6,ACC3 ;ACC3+=a6*d3; a6=*--pPredY;
0x000002e2: 9bfc00000004 suba.l #4,a5 ;pPredY--;
0x000002e8: d7fc00000004 adda.l #4,a3 ;pCurCoef++;
0x000002ee: aa9b5ace mac.l a6,d5,<<,(a3)+,d5,ACC0 ;ACC0+=a6*d5; d5=*pCurCoef++;
0x000002f2: ac8e0ac0 mac.l a6,d6,<<,ACC1 ;ACC1+=a6*d6;
0x000002f6: a60e0ad0 mac.l a6,d3,<<,ACC2 ;ACC2+=a6*d3;
0x000002fa: ac654ade mac.l a6,d4,<<,-(a5),a6,ACC3 ;ACC3+=a6*d4; a6=*--pPredY;
0x000002fe: 9bfc00000004 suba.l #4,a5 ;pPredY--;
0x00000304: d7fc00000004 adda.l #4,a3 ;pCurCoef++;
0x0000030a: ac9b6ace mac.l a6,d6,<<,(a3)+,d6,ACC0 ;ACC0+=a6*d6; d6=*pCurCoef++
0x0000030e: a68e0ac0 mac.l a6,d3,<<,ACC1 ;ACC1+=a6*d3;
0x00000312: a80e0ad0 mac.l a6,d4,<<,ACC2 ;ACC2+=a6*d4;
0x00000316: ac655ade mac.l a6,d5,<<,-(a5),a6,ACC3 ;ACC3+=a6*d5; a6=*--pPredY;
0x0000031a: 9bfc00000004 suba.l #4,a5 ;pPredY--;
0x00000320: d7fc00000004 adda.l #4,a3 ;pCurCoef++;
0x00000326: 5882 addq.l #4,d2 ;
0x00000328: 6086 bra .FORk13 ;
.ENDFORk13 ;}
0x0000032a: 2400 move.l d0,d2 ;
0x0000032c: 028200000003 andi.l #3,d2
;
.FORk14 ;for(k=N%4; k>0; k--){
0x00000332: 0c8200000000 cmpi.l #0,d2 ;
0x00000338: 6700002a beq .ENDFORk14 ;
0x0000033c: a60e0ac0 mac.l a6,d3,<<,ACC0 ;ACC0+=a6*d3;
0x00000340: a88e0ac0 mac.l a6,d4,<<,ACC1 ;ACC1+=a6*d4;
0x00000344: aa0e0ad0 mac.l a6,d5,<<,ACC2 ;ACC2+=a6*d5;
0x00000348: ac656ade mac.l a6,d6,<<,-(a5),a6,ACC3 ;ACC3+=a6*d6; a6=*--pPredY;
0x0000034c: 2604 move.l d4,d3 ;d3=d4;
0x0000034e: 2805 move.l d5,d4 ;d4=d5;
0x00000350: 2a06 move.l d6,d5 ;d5=d6;
0x00000352: 2c1b move.l (a3)+,d6 ;d6=*pCurCoef++;
0x00000354: 9bfc00000004 suba.l #4,a5 ;pPredY--;
0x0000035a: d7fc00000004 adda.l #4,a3 ;pCurCoef++;
0x00000360: 5382 subq.l #1,d2 ;
0x00000362: 60ce bra .FORk14 ;
.ENDFORk14 ;}
;
0x00000364: a60e0ac0 mac.l a6,d3,<<,ACC0 ;ACC0+=a6*d3;
0x00000368: a88e0ac0 mac.l a6,d4,<<,ACC1 ;ACC1+=a6*d4;
0x0000036c: ace55ade mac.l a6,d5,<<,-(a5),a6,ACC2 ;ACC2+=a6*d5; a6=*--pPredY;
0x00000370: 9bfc00000004 suba.l #4,a5 ;pPredY--;
0x00000376: a80e0ac0 mac.l a6,d4,<<,ACC0 ;ACC0+=a6*d4;
0x0000037a: ac655ace mac.l a6,d5,<<,-(a5),a6,ACC1 ;ACC1+=a6*d5; a6=*--pPredY;
0x0000037e: aa0e0ac0 mac.l a6,d5,<<,ACC0 ;ACC0+=a6*d5;
.ENDBUFy ;}
0x00000382: 2c52 move.l (a2),a6 ;pCurCoef=pIIR->pIirCoef+i*2-1;
0x00000384: e389 lsl.l #1,d1
0x00000386: 47f61cfc lea (-4,a6,d1.l*4),a3
0x0000038a: e289 lsr.l #1,d1
0x0000038c: 2a6f0048 move.l 72(a7),a5 ;pPredY=pY;
0x00000390: 2c5d move.l (a5)+,a6 ;a6=*pPredY++;
0x00000392: 2c23 move.l -(a3),d6 ;d6=*--pCurCoef;
0x00000394: 97fc00000004 suba.l #4,a3 ;pCurCoef--;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -