Tizen 2.0 Release
[profile/ivi/osmesa.git] / src / gallium / drivers / llvmpipe / lp_tile_shuffle_mask.py
1
2 tile =  [[0,1,4,5],
3          [2,3,6,7],
4          [8,9,12,13],
5          [10,11,14,15]]
6 shift = 0
7 align = 1
8 value = 0L
9 holder = []
10
11 import sys
12
13 basemask = [0x
14 fd = sys.stdout
15 indent = " "*9
16 for c in range(4):
17    fd.write(indent + "*pdst++ = \n");
18    for l,line in enumerate(tile):
19         fd.write(indent + "   %s_mm_shuffle_epi8(line%d, (__m128i){"%(l and '+' or ' ',l))
20         for i,pos in enumerate(line):
21             mask = 0x00ffffffff & (~(0xffL << shift))
22             value = mask | ((pos) << shift)
23             holder.append(value)
24             if holder and (i + 1) %2 == 0:
25                 fd.write("0x%8.0x"%(holder[0] + (holder[1] << 32)))
26                 holder = []
27                 if (i) %4 == 1:
28                         fd.write( ',')
29                 
30         fd.write("})%s\n"%((l == 3) and ';' or ''))
31    print
32    shift += 8