Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | RSS feed

  1. /*
  2.  * All Video Processing kernels
  3.  * Copyright © <2010>, Intel Corporation.
  4.  *
  5.  * This program is licensed under the terms and conditions of the
  6.  * Eclipse Public License (EPL), version 1.0.  The full text of the EPL is at
  7.  * http://www.opensource.org/licenses/eclipse-1.0.php.
  8.  *
  9.  */
  10.  
  11. //////////////////////////////////////////////////////////////////////////////////
  12. // Multiple_Loop_Head.asm
  13. // This code sets up the loop control for multiple blocks per thread
  14.  
  15.         mul (1) wFRAME_ENDX:w   ubBLK_CNT_X:ub  16:uw   { NoDDClr }                             // Build multi-block loop counters
  16.         mov (1) wNUM_BLKS:w             ubNUM_BLKS:ub                   { NoDDClr, NoDDChk }    // Copy num blocks to word variable
  17.         mov (1) wCOPY_ORIX:w    wORIX:w                                 { NoDDChk }                             // Copy multi-block origin in pixel
  18.         mov (2) fFRAME_VID_ORIX<1>:f                    fSRC_VID_H_ORI<4;2,2>:f                 // Copy src video origin for scaling, and alpha origin for blending
  19.         add (1) wFRAME_ENDX:w   wFRAME_ENDX:w   wORIX:w                                                 // Continue building multi-block loop counters
  20.  
  21. VIDEO_PROCESSING_LOOP:          // Loop back entry point as the biginning of the loop for multiple blocks
  22.        
  23. // Beginning of the loop
  24.