Files
compute-runtime/shared/source/kernel/implicit_args.cpp
Mateusz Hoppe b17ed79618 fix: update implicitArgs versions
- fix layout of implicit args
- add enqueued local size and sync buffer ptr

Related-To: NEO-15160

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2025-07-22 15:12:55 +02:00

34 lines
1.0 KiB
C++

/*
* Copyright (C) 2025 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#include "implicit_args.h"
#include <cstddef>
#include <cstdint>
#include <optional>
#include <type_traits>
namespace NEO {
static_assert(sizeof(ImplicitArgsHeader) == (2 * sizeof(uint8_t)));
static_assert(std::alignment_of_v<ImplicitArgsV0> == 32, "Implicit args size need to be aligned to 32");
static_assert(sizeof(ImplicitArgsV0) == (32 * sizeof(uint32_t)));
static_assert(NEO::TypeTraits::isPodV<ImplicitArgsV0>);
static_assert(std::alignment_of_v<ImplicitArgsV1> == 32, "Implicit args size need to be aligned to 32");
static_assert(sizeof(ImplicitArgsV1) == (40 * sizeof(uint32_t)));
static_assert(NEO::TypeTraits::isPodV<ImplicitArgsV1>);
static_assert(std::alignment_of_v<ImplicitArgsV2> == 32, "Implicit args size need to be aligned to 32");
static_assert(sizeof(ImplicitArgsV2) == (40 * sizeof(uint32_t)));
static_assert(NEO::TypeTraits::isPodV<ImplicitArgsV2>);
static_assert(NEO::TypeTraits::isPodV<ImplicitArgs>);
} // namespace NEO