2
* All Video Processing kernels
3
* Copyright © <2010>, Intel Corporation.
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.
11
//////////////////////////////////////////////////////////////////////////////////
12
// Multiple_Loop_Head.asm
13
// This code sets up the loop control for multiple blocks per thread
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
21
VIDEO_PROCESSING_LOOP: // Loop back entry point as the biginning of the loop for multiple blocks
23
// Beginning of the loop