/
redgpu
/
clspv
Обзор
Документация
Войти
/
redgpu
/
clspv
Код
Запросы
0
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
test/composite_construct_array.cl
32 строки
897 B
Kévin Petit
Remove the option to emit assembly (#320)
02 апр 2019, 23:51
02 апр 2019, 23:51
e478690
Код
Авторство
О чём код?
// Test rewriting complete sets of insertions into an array. // The rewrite is done by default. // RUN: clspv %s -o %t.spv -no-inline-single // RUN: spirv-dis -o %t2.spvasm %t.spv // RUN: FileCheck %s < %t2.spvasm // RUN: spirv-val --target-env vulkan1.0 %t.spv struct S { int arr[5]; }; struct S bar(int n) { struct S s; if (n > 0) { s.arr[0] = n; s.arr[1] = n + 1; s.arr[2] = n + 2; s.arr[3] = n + 3; s.arr[4] = n + 4; } return s; } kernel void foo(global struct S *out, int n) { *out = bar(n); } // CHECK: [[array:%[0-9a-zA-Z_]+]] = OpTypeArray // CHECK: [[struct:%[0-9a-zA-Z_]+]] = OpTypeStruct [[array]] // CHECK-NOT: OpCompositeInsert // CHECK: [[array_construct:%[0-9a-zA-Z_]+]] = OpCompositeConstruct [[array]] // CHECK-NOT: OpCompositeInsert // CHECK: [[struct_construct:%[0-9a-zA-Z_]+]] = OpCompositeConstruct [[struct]] // CHECK-NOT: OpCompositeInsert