1
0
mirror of https://github.com/fumiama/gozel.git synced 2026-06-05 00:10:24 +08:00
Files
gozel/core_program.go
2026-03-24 00:49:26 +08:00

55 lines
2.6 KiB
Go

// Code generated by cmd/gen. DO NOT EDIT.
/*
*
* Copyright (C) 2019-2025 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
* @file ze_api.h
* @version v1.15-r1.15.31
*
*/
package gozel
import (
"unsafe"
)
// ZE_MODULE_PROGRAM_EXP_NAME Module Program Extension Name
const ZE_MODULE_PROGRAM_EXP_NAME = "ZE_experimental_module_program"
// ZeModuleProgramExpVersion (ze_module_program_exp_version_t) Module Program Extension Version(s)
type ZeModuleProgramExpVersion uintptr
const (
ZE_MODULE_PROGRAM_EXP_VERSION_1_0 ZeModuleProgramExpVersion = /* ZE_MAKE_VERSION( 1, 0 ) */((( 1 << 16 )|( 0 & 0x0000ffff))) // ZE_MODULE_PROGRAM_EXP_VERSION_1_0 version 1.0
ZE_MODULE_PROGRAM_EXP_VERSION_CURRENT ZeModuleProgramExpVersion = /* ZE_MAKE_VERSION( 1, 0 ) */((( 1 << 16 )|( 0 & 0x0000ffff))) // ZE_MODULE_PROGRAM_EXP_VERSION_CURRENT latest known version
ZE_MODULE_PROGRAM_EXP_VERSION_FORCE_UINT32 ZeModuleProgramExpVersion = 0x7fffffff // ZE_MODULE_PROGRAM_EXP_VERSION_FORCE_UINT32 Value marking end of ZE_MODULE_PROGRAM_EXP_VERSION_* ENUMs
)
// ZeModuleProgramExpDesc (ze_module_program_exp_desc_t) Module extended descriptor to support multiple input modules.
///
/// @details
/// - Implementation must support ::ZE_MODULE_PROGRAM_EXP_NAME extension
/// - Modules support import and export linkage for functions and global
/// variables.
/// - pInputModules, pBuildFlags, and pConstants from ::ze_module_desc_t is
/// ignored.
/// - Format in ::ze_module_desc_t needs to be set to
/// ::ZE_MODULE_FORMAT_IL_SPIRV or ::ZE_MODULE_FORMAT_NATIVE.
/// - All modules in the list must be of the same format and match the
/// format specified in ::ze_module_desc_t.
type ZeModuleProgramExpDesc struct {
Stype ZeStructureType // Stype [in] type of this structure
Pnext unsafe.Pointer // Pnext [in][optional] must be null or a pointer to an extension-specific structure (i.e. contains stype and pNext).
Count uint32 // Count [in] Count of input modules
Inputsizes *uintptr // Inputsizes [in][range(0, count)] sizes of each input module in pInputModules.
Pinputmodules **uint8 // Pinputmodules [in][range(0, count)] pointer to an array of binary modules in format specified as part of ::ze_module_desc_t.
Pbuildflags **byte // Pbuildflags [in][optional][range(0, count)] array of strings containing build flags. See pBuildFlags in ::ze_module_desc_t.
Pconstants **ZeModuleConstants // Pconstants [in][optional][range(0, count)] pointer to array of specialization constant strings. Valid only for SPIR-V input. This must be set to nullptr if no specialization constants are provided.
}