feat(zebin): add support for sync buffer

Adds support in zebinary for sync buffer required for global barriers.

Signed-off-by: Krystian Chmielewski <krystian.chmielewski@intel.com>
This commit is contained in:
Krystian Chmielewski
2022-10-27 10:59:05 +00:00
committed by Compute-Runtime-Automation
parent d8a66cd14d
commit 70da7c4b65
4 changed files with 51 additions and 3 deletions

View File

@@ -212,7 +212,8 @@ constexpr ConstStringRef bufferOffset("buffer_offset");
constexpr ConstStringRef printfBuffer("printf_buffer");
constexpr ConstStringRef workDimensions("work_dimensions");
constexpr ConstStringRef implicitArgBuffer("implicit_arg_buffer");
constexpr ConstStringRef inlineSampler("arg_inline_sampler");
constexpr ConstStringRef syncBuffer("sync_buffer");
namespace Image {
constexpr ConstStringRef width("image_width");
constexpr ConstStringRef height("image_height");
@@ -565,6 +566,7 @@ enum ArgType : uint8_t {
ArgTypeVmeSubpixelMode,
ArgTypeVmeSadAdjustMode,
ArgTypeVmeSearchPathType,
ArgTypeSyncBuffer,
ArgTypeMax
};

View File

@@ -22,7 +22,7 @@ using namespace Tags::Kernel::PayloadArgument::ArgType::Sampler::Vme;
using ArgType = Types::Kernel::ArgType;
constexpr ConstStringRef name = "argument type";
constexpr LookupArray<ConstStringRef, ArgType, 34> lookup({{{packedLocalIds, ArgType::ArgTypePackedLocalIds},
constexpr LookupArray<ConstStringRef, ArgType, 35> lookup({{{packedLocalIds, ArgType::ArgTypePackedLocalIds},
{localId, ArgType::ArgTypeLocalId},
{localSize, ArgType::ArgTypeLocalSize},
{groupCount, ArgType::ArgTypeGroupCount},
@@ -55,7 +55,8 @@ constexpr LookupArray<ConstStringRef, ArgType, 34> lookup({{{packedLocalIds, Arg
{blockType, ArgType::ArgTypeVmeMbBlockType},
{subpixelMode, ArgType::ArgTypeVmeSubpixelMode},
{sadAdjustMode, ArgType::ArgTypeVmeSadAdjustMode},
{searchPathType, ArgType::ArgTypeVmeSearchPathType}}});
{searchPathType, ArgType::ArgTypeVmeSearchPathType},
{syncBuffer, ArgType::ArgTypeSyncBuffer}}});
static_assert(lookup.size() == ArgType::ArgTypeMax - 1, "Every enum field must be present");
} // namespace ArgType