⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fdct_ia64.s

📁 wince下的xvidcore开发库,可用于MP4等视频播放开发
💻 S
📖 第 1 页 / 共 4 页
字号:
//      pshr2 loc55 = loc55, 2
//      ;;
//
//              // *****************
//              // Transpose matrix
//              // *****************
//
//      mix2.r loc32 = loc48, loc49     // tmp0 = mixr y0, y1
//      mix2.l loc33 = loc48, loc49     // tmp1 = mixl y0, y1
//      mix2.r loc34 = loc50, loc51     // tmp2 = mixr y2, y3
//      mix2.l loc35 = loc50, loc51     // tmp3 = mixl y2, y3
//      ;;
//      mix4.r loc16 = loc32, loc34     // x0 = mixr tmp0, tmp2
//      mix4.r loc17 = loc33, loc35     // x1 = mixr tmp1, tmp3
//      mix4.l loc18 = loc32, loc34     // x2 = mixl tmp0, tmp2
//      mix4.l loc19 = loc33, loc35     // x3 = mixl tmp1, tmp3
//      ;;
//      mix2.r loc32 = loc40, loc41     // tmp0 = mixr y0.2, y1.2
//      mix2.l loc33 = loc40, loc41     // tmp1 = mixl y0.2, y1.2
//      mix2.r loc34 = loc42, loc43     // tmp2 = mixr y2.2, y3.2
//      mix2.l loc35 = loc42, loc43     // tmp3 = mixl y2.2, y3.2
//      ;;
//      mix4.r loc20 = loc32, loc34     // x4 = mixr tmp0, tmp2
//      mix4.r loc21 = loc33, loc35     // x5 = mixr tmp1, tmp3
//      mix4.l loc22 = loc32, loc34     // x6 = mixl tmp0, tmp2
//      mix4.l loc23 = loc33, loc35     // x7 = mixl tmp1, tmp3
//      ;;
//      mix2.r loc32 = loc52, loc53     // tmp0 = mixr y4, y5
//      mix2.l loc33 = loc52, loc53     // tmp1 = mixl y4, y5
//      mix2.r loc34 = loc54, loc55     // tmp2 = mixr y6, y7
//      mix2.l loc35 = loc54, loc55     // tmp3 = mixl y6, y7
//      ;;
//      mix4.r loc24 = loc32, loc34     // x0.2 = mixr tmp0, tmp2
//      mix4.r loc25 = loc33, loc35     // x1.2 = mixr tmp1, tmp3
//      mix4.l loc26 = loc32, loc34     // x2.2 = mixl tmp0, tmp2
//      mix4.l loc27 = loc33, loc35     // x3.2 = mixl tmp1, tmp3
//      ;;
//      mix2.r loc32 = loc44, loc45     // tmp0 = mixr y4.2, y5.2
//      mix2.l loc33 = loc44, loc45     // tmp1 = mixl y4.2, y5.2
//      mix2.r loc34 = loc46, loc47     // tmp2 = mixr y6.2, y6.2
//      mix2.l loc35 = loc46, loc47     // tmp3 = mixl y6.2, y6.2
//      ;;
//      mix4.r loc28 = loc32, loc34     // x4.2 = mixr tmp0, tmp2
//      mix4.r loc29 = loc33, loc35     // x5.2 = mixr tmp1, tmp3
//      mix4.l loc30 = loc32, loc34     // x6.2 = mixl tmp0, tmp2
//      mix4.l loc31 = loc33, loc35     // x7.2 = mixl tmp1, tmp3
//      ;;
//              
//              // *******************
//              // row-DTC 1st half
//              // *******************
//      
//      padd2 loc32 = loc16, loc23      // t0 = x0 + x7
//      padd2 loc33 = loc17, loc22      // t1 = x1 + x6
//      padd2 loc34 = loc18, loc21      // t2 = x2 + x5
//      padd2 loc35 = loc19, loc20      // t3 = x3 + x4
//      psub2 loc36 = loc16, loc23      // t4 = x0 - x7
//      psub2 loc37 = loc17, loc22      // t5 = x1 - x6
//      psub2 loc38 = loc18, loc21      // t6 = x2 - x5
//      psub2 loc39 = loc19, loc20      // t7 = x3 - x4
//      ;;
//      padd2 loc40 = loc37, loc38      // buf0 = t5 + t6
//      psub2 loc41 = loc37, loc38      // buf1 = t5 - t6
//      ;;
//      pmpyshr2 loc37 = loc40, r28, 16 // t5 = buf0 * g4
//      pmpyshr2 loc38 = loc41, r28, 16 // t6 = buf1 * g4
//      ;;
//      padd2 loc37 = loc37, loc40      // t5 = t5 + buf1
//      padd2 loc38 = loc38, loc41      // t6 = t6 + buf2
//      ;;
//      padd2 loc16 = loc32, loc35      // x0 = t0 + t3
//      padd2 loc17 = loc33, loc34      // x1 = t1 + t2
//      psub2 loc18 = loc32, loc35      // x2 = t0 - t3
//      psub2 loc19 = loc33, loc34      // x3 = t1 - t2
//      padd2 loc20 = loc36, loc37      // x4 = t4 + t5
//      padd2 loc21 = loc38, loc39      // x5 = t6 + t7
//      psub2 loc22 = loc36, loc37      // x6 = t4 - t5
//      psub2 loc23 = loc38, loc39      // x7 = t6 - t7
//      ;;
//      padd2 loc32 = loc16, loc17      // t0 = x0 + x1
//      psub2 loc33 = loc16, loc17      // t1 = x0 - x1
//      pmpyshr2 loc42 = loc18, r30, 16 // buf2 = x2 * c1
//      pmpyshr2 loc43 = loc19, r30, 16 // buf3 = x3 * c1
//      pmpyshr2 loc44 = loc20, r31, 16 // buf4 = x4 * c0
//      pmpyshr2 loc45 = loc21, r31, 16 // buf5 = x5 * c0
//      pmpyshr2 loc46 = loc22, r29, 16 // buf6 = x6 * c2
//      pmpyshr2 loc47 = loc23, r29, 16 // buf7 = x7 * c2
//      ;;
//      padd2 loc46 = loc46, loc22      // buf6 = buf6 + x6
//      padd2 loc47 = loc47, loc23      // buf7 = buf7 + x7
//      ;;
//      padd2 loc34 = loc18, loc43      // t2 = x2 + (x3 * c1)
//      psub2 loc35 = loc42, loc19      // t3 = (c1 * x2) - x3
//      padd2 loc36 = loc20, loc45      // t4 = x4 + (x5 * c1)
//      psub2 loc37 = loc44, loc21      // t5 = (c1 * x4) - x5
//      padd2 loc38 = loc22, loc47      // t6 = x6 + (x7 * c1)
//      psub2 loc39 = loc46, loc23      // t7 = (c1 * x6) - x7
//      ;;
//      pmpyshr2 loc16 = loc32, r28, 16 // x0 = t0 * g4
//      pmpyshr2 loc17 = loc33, r28, 16 // x1 = t1 * g4
//      pmpyshr2 loc18 = loc34, r26, 16 // x2 = t2 * g2
//      pmpyshr2 loc19 = loc35, r26, 16 // x3 = t3 * g2
//      pmpyshr2 loc20 = loc36, r25, 16 // x4 = t4 * g1
//      pmpyshr2 loc21 = loc37, r25, 16 // x5 = t5 * g1
//      pmpyshr2 loc22 = loc38, r27, 16 // x6 = t6 * g3
//      pmpyshr2 loc23 = loc39, r27, 16 // x7 = t7 * g3
//      ;;
//      padd2 loc48 = loc16, loc32      // y0 = x0 + t0
//      padd2 loc49 = loc20, loc36      // y1 = x4 + t4
//      padd2 loc50 = loc18, loc34      // y2 = x2 + t2
//      padd2 loc51 = loc22, loc38      // y3 = x6 + t6
//      padd2 loc52 = loc17, loc33      // y4 = x1 + t1
//      padd2 loc53 = loc23, loc39      // y5 = x7 + t7
//      padd2 loc54 = loc19, loc35      // y6 = x3 + t3
 //      padd2 loc55 = loc21, loc37      // y7 = x5 + t5
 //      ;;
 //      
 //              // *******************
 //              // row-DTC 2nd half
 //              // *******************
 //      
 //      padd2 loc32 = loc24, loc31      // t0 = x0.2 + x7.2
 //      padd2 loc33 = loc25, loc30      // t1 = x1.2 + x6.2
 //      padd2 loc34 = loc26, loc29      // t2 = x2.2 + x5.2
 //      padd2 loc35 = loc27, loc28      // t3 = x3.2 + x4.2
 //      psub2 loc36 = loc24, loc31      // t4 = x0.2 - x7.2
 //      psub2 loc37 = loc25, loc30      // t5 = x1.2 - x6.2
 //      psub2 loc38 = loc26, loc29      // t6 = x2.2 - x5.2
 //      psub2 loc39 = loc27, loc28      // t7 = x3.2 - x4.2
 //      ;;
 //      padd2 loc40 = loc37, loc38      // buf0 = t5 + t6
 //      psub2 loc41 = loc37, loc38      // buf1 = t5 - t6
 //      ;;
 //      pmpyshr2 loc37 = loc40, r28, 16 // t5 = buf0 * g4
 //      pmpyshr2 loc38 = loc41, r28, 16 // t6 = buf1 * g4
 //      ;;
 //      padd2 loc37 = loc37, loc40      // t5 = t5 + buf1
 //      padd2 loc38 = loc38, loc41      // t6 = t6 + buf2
 //      ;;
 //      padd2 loc16 = loc32, loc35      // x0 = t0 + t3
 //      padd2 loc17 = loc33, loc34      // x1 = t1 + t2
 //      psub2 loc18 = loc32, loc35      // x2 = t0 - t3
 //      psub2 loc19 = loc33, loc34      // x3 = t1 - t2
 //      padd2 loc20 = loc36, loc37      // x4 = t4 + t5
 //      padd2 loc21 = loc38, loc39      // x5 = t6 + t7
 //      psub2 loc22 = loc36, loc37      // x6 = t4 - t5
 //      psub2 loc23 = loc38, loc39      // x7 = t6 - t7
 //      ;;
 //      padd2 loc32 = loc16, loc17      // t0 = x0 + x1
 //      psub2 loc33 = loc16, loc17      // t1 = x0 - x1
 //      pmpyshr2 loc42 = loc18, r30, 16 // buf2 = x2 * c1
 //      pmpyshr2 loc43 = loc19, r30, 16 // buf3 = x3 * c1
 //      pmpyshr2 loc44 = loc20, r31, 16 // buf4 = x4 * c0
 //      pmpyshr2 loc45 = loc21, r31, 16 // buf5 = x5 * c0
 //      pmpyshr2 loc46 = loc22, r29, 16 // buf6 = x6 * c2
 //      pmpyshr2 loc47 = loc23, r29, 16 // buf7 = x7 * c2
 //      ;;
 //      padd2 loc46 = loc46, loc22      // buf6 = buf6 + x6
 //      padd2 loc47 = loc47, loc23      // buf7 = buf7 + x7
 //      ;;
 //      padd2 loc34 = loc18, loc43      // t2 = x2 + (x3 * c1)
 //      psub2 loc35 = loc42, loc19      // t3 = (c1 * x2) - x3
 //      padd2 loc36 = loc20, loc45      // t4 = x4 + (x5 * c1)
 //      psub2 loc37 = loc44, loc21      // t5 = (c1 * x4) - x5
 //      padd2 loc38 = loc22, loc47      // t6 = x6 + (x7 * c1)
 //      psub2 loc39 = loc46, loc23      // t7 = (c1 * x6) - x7
 //      ;;
 //      pmpyshr2 loc16 = loc32, r28, 16 // x0 = t0 * g4
 //      pmpyshr2 loc17 = loc33, r28, 16 // x1 = t1 * g4
 //      pmpyshr2 loc18 = loc34, r26, 16 // x2 = t2 * g2
 //      pmpyshr2 loc19 = loc35, r26, 16 // x3 = t3 * g2
 //      pmpyshr2 loc20 = loc36, r25, 16 // x4 = t4 * g1
 //      pmpyshr2 loc21 = loc37, r25, 16 // x5 = t5 * g1
 //      pmpyshr2 loc22 = loc38, r27, 16 // x6 = t6 * g3
 //      pmpyshr2 loc23 = loc39, r27, 16 // x7 = t7 * g3
 //      ;;
 //      padd2 loc40 = loc16, loc32      // y0.2 = x0 + t0
 //      padd2 loc41 = loc20, loc36      // y1.2 = x4 + t4
 //      padd2 loc42 = loc18, loc34      // y2.2 = x2 + t2
 //      padd2 loc43 = loc22, loc38      // y3.2 = x6 + t6
 //      padd2 loc44 = loc17, loc33      // y4.2 = x1 + t1
 //      padd2 loc45 = loc23, loc39      // y5.2 = x7 + t7
 //      padd2 loc46 = loc19, loc35      // y6.2 = x3 + t3
 //      padd2 loc47 = loc21, loc37      // y7.2 = x5 + t5
 //      ;;
 //              // *******************
 //              // Transpose matrix
 //              // *******************
 //
 //      mix2.l loc32 = loc49, loc48     // tmp0 = mixr y1, y0
 //      mix2.r loc33 = loc49, loc48     // tmp1 = mixl y1, y0
 //      mix2.l loc34 = loc51, loc50     // tmp2 = mixr y3, y2
 //      mix2.r loc35 = loc51, loc50     // tmp3 = mixl y3, y2
 //      ;;
 //      mix4.l loc16 = loc34, loc32     // x0 = mixr tmp2, tmp0
 //      mix4.l loc17 = loc35, loc33     // x1 = mixr tmp3, tmp1
 //      mix4.r loc18 = loc34, loc32     // x2 = mixl tmp2, tmp0
 //      mix4.r loc19 = loc35, loc33     // x3 = mixl tmp3, tmp1
 //      ;;
 //      mix2.l loc32 = loc41, loc40     // tmp0 = mixr y0.2, y1.2
 //      mix2.r loc33 = loc41, loc40     // tmp1 = mixl y0.2, y1.2
 //      mix2.l loc34 = loc43, loc42     // tmp2 = mixr y2.2, y3.2
 //      mix2.r loc35 = loc43, loc42     // tmp3 = mixl y2.2, y3.2
 //      ;;
 //      mix4.l loc20 = loc34, loc32     // x4 = mixr tmp2, tmp0
 //      mix4.l loc21 = loc35, loc33     // x5 = mixr tmp3, tmp1
 //      mix4.r loc22 = loc34, loc32     // x6 = mixl tmp2, tmp0
 //      mix4.r loc23 = loc35, loc33     // x7 = mixl tmp3, tmp1
 //      ;;
 //      mix2.l loc32 = loc53, loc52     // tmp0 = mixr y5, y4
 //      mix2.r loc33 = loc53, loc52     // tmp1 = mixl y5, y4
 //      mix2.l loc34 = loc55, loc54     // tmp2 = mixr y7, y6
 //      mix2.r loc35 = loc55, loc54     // tmp3 = mixl y7, y6
 //      ;;
 //      mix4.l loc24 = loc34, loc32     // x0.2 = mixr tmp2, tmp0
 //      mix4.l loc25 = loc35, loc33     // x1.2 = mixr tmp3, tmp1
 //      mix4.r loc26 = loc34, loc32     // x2.2 = mixl tmp2, tmp0
 //      mix4.r loc27 = loc35, loc33     // x3.2 = mixl tmp3, tmp1
 //      ;;
 //      mix2.l loc32 = loc45, loc44     // tmp0 = mixr y4.2, y5.2
 //      mix2.r loc33 = loc45, loc44     // tmp1 = mixl y4.2, y5.2
 //      mix2.l loc34 = loc47, loc46     // tmp2 = mixr y6.2, y6.2
 //      mix2.r loc35 = loc47, loc46     // tmp3 = mixl y6.2, y6.2
 //      ;;
 //      mix4.l loc28 = loc34, loc32     // x4.2 = mixr tmp2, tmp0
 //      mix4.l loc29 = loc35, loc33     // x5.2 = mixr tmp3, tmp1
 //      mix4.r loc30 = loc34, loc32     // x6.2 = mixl tmp2, tmp0
 //      mix4.r loc31 = loc35, loc33     // x7.2 = mixl tmp3, tmp1
 //      ;;
 //
 //              // ********
 //              // descale
 //              // ********
 //
 //      padd2 loc16 = loc16, r23
 //      padd2 loc17 = loc17, r23
 //      padd2 loc18 = loc18, r23
 //      padd2 loc19 = loc19, r23
 //      padd2 loc20 = loc20, r23
 //      padd2 loc21 = loc21, r23
 //      padd2 loc22 = loc22, r23
 //      padd2 loc23 = loc23, r23
 //      padd2 loc24 = loc24, r23
 //      padd2 loc25 = loc25, r23
 //      padd2 loc26 = loc26, r23
 //      padd2 loc27 = loc27, r23
 //      padd2 loc28 = loc28, r23
 //      padd2 loc29 = loc29, r23
 //      padd2 loc30 = loc30, r23
 //      padd2 loc31 = loc31, r23
 //      ;;
 //      pshr2 loc16 = loc16, 3
 //      pshr2 loc17 = loc17, 3
 //      pshr2 loc18 = loc18, 3
 //      pshr2 loc19 = loc19, 3
 //      pshr2 loc20 = loc20, 3
 //      pshr2 loc21 = loc21, 3
 //      pshr2 loc22 = loc22, 3
 //      pshr2 loc23 = loc23, 3
 //      pshr2 loc24 = loc24, 3
 //      pshr2 loc25 = loc25, 3
 //      pshr2 loc26 = loc26, 3
 //      pshr2 loc27 = loc27, 3
 //      pshr2 loc28 = loc28, 3
 //      pshr2 loc29 = loc29, 3
 //      pshr2 loc30 = loc30, 3
 //      pshr2 loc31 = loc31, 3
 //      ;;
 //              // ************
 //              // Store Matrix
 //              // ************
 //      st8 [loc0] = loc16
 //      st8 [loc1] = loc24
 //      st8 [loc2] = loc17
 //      st8 [loc3] = loc25
 //      st8 [loc4] = loc18
 //      st8 [loc5] = loc26
 //      st8 [loc6] = loc19
 //      st8 [loc7] = loc27
 //      st8 [loc8] = loc20
 //      st8 [loc9] = loc28
 //      st8 [loc10] = loc21
 //      st8 [loc11] = loc29
 //      st8 [loc12] = loc22
 //      st8 [loc13] = loc30
 //      st8 [loc14] = loc23
 //      st8 [loc15] = loc31
 //
 //      mov ar.pfs = r14
 //      br.ret.sptk.many b0
 //      .endp fdct_ia64#
 //      .common fdct#,8,8
 //

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -