File: 1844.ispc

package info (click to toggle)
ispc 1.28.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 97,620 kB
  • sloc: cpp: 77,067; python: 8,303; yacc: 3,337; lex: 1,126; ansic: 631; sh: 475; makefile: 17
file content (23 lines) | stat: -rw-r--r-- 1,157 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// RUN: %{ispc} %s -o %t.o --arch=x86-64 --target=avx512skx-x64
// RUN: %{ispc} %s -o %t.o --arch=x86-64 --target=avx512skx-x32
// RUN: %{ispc} %s -o %t.o --arch=x86-64 --target=avx512skx-x16
// RUN: %{ispc} %s -o %t.o --arch=x86-64 --target=avx2-i8x32
// RUN: %{ispc} %s -o %t.o --target=host

// REQUIRES: X86_ENABLED

extern uniform unsigned int64 var_6;
extern uniform unsigned int16 var_11;
extern uniform bool arr_201 [1] [15] [20];
extern uniform unsigned int8 arr_202 [1] [15] [20];
extern uniform int64 arr_210 [1] [15] [20] [26] [11];

export void test() {
    foreach(i_53 = var_6...0L)
        for (uniform unsigned int16 i_54 = 0L; i_54 < 14L; i_54 += 4L)
            for (uniform unsigned int8 i_55 = 0; i_55 < 19; i_55 += 2)
                for (uniform unsigned int8 i_57 = 0L; i_57 < 25L; i_57 += 4)
                    for (uniform unsigned int8 i_58 = 0; i_58 < extract(((varying int32)(varying unsigned int16)var_11) ^ arr_201 [i_53] [i_54] [i_55], 0U) - 120L; i_58 += 4L)
                        if (arr_201 [i_53] [i_54] [i_55])
                            arr_210 [i_53] [i_54] [i_55] [i_57] [i_58] = -arr_202 [i_53] [i_54] [i_55];
}