mirror of
https://github.com/intel/compute-runtime.git
synced 2025-12-24 21:18:24 +08:00
Optimize binaries' size by adjusting linkage of constants in headers
When header is included for the first time in translation unit, then preprocessor simply copy-pastes its content. If we define a constant in a header file and this constant has internal linkage then each and every translation unit, which includes this header will have its own copy of this constant. C++17 introduces inline variables, which are meant to allow creation of variables in header files, which do not cause multiple instances. The inline variable has a single instance when: - constexpr is used without static (constexpr implicitly implies inline) - inline is used without static - inline const is used without static (const does not imply internal linkage when used with inline) Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
ffe8c75291
commit
c0342a0ab5
@@ -41,27 +41,27 @@ enum RELOC_TYPE_ZEBIN : uint32_t {
|
||||
};
|
||||
|
||||
namespace SectionsNamesZebin {
|
||||
static constexpr ConstStringRef textPrefix = ".text.";
|
||||
static constexpr ConstStringRef functions = ".text.Intel_Symbol_Table_Void_Program";
|
||||
static constexpr ConstStringRef dataConst = ".data.const";
|
||||
static constexpr ConstStringRef dataGlobalConst = ".data.global_const";
|
||||
static constexpr ConstStringRef dataGlobal = ".data.global";
|
||||
static constexpr ConstStringRef dataConstString = ".data.const.string";
|
||||
static constexpr ConstStringRef symtab = ".symtab";
|
||||
static constexpr ConstStringRef relTablePrefix = ".rel.";
|
||||
static constexpr ConstStringRef spv = ".spv";
|
||||
static constexpr ConstStringRef debugPrefix = ".debug_";
|
||||
static constexpr ConstStringRef debugInfo = ".debug_info";
|
||||
static constexpr ConstStringRef debugAbbrev = ".debug_abbrev";
|
||||
static constexpr ConstStringRef zeInfo = ".ze_info";
|
||||
static constexpr ConstStringRef gtpinInfo = ".gtpin_info";
|
||||
static constexpr ConstStringRef noteIntelGT = ".note.intelgt.compat";
|
||||
static constexpr ConstStringRef buildOptions = ".misc.buildOptions";
|
||||
static constexpr ConstStringRef vIsaAsmPrefix = ".visaasm.";
|
||||
static constexpr ConstStringRef externalFunctions = "Intel_Symbol_Table_Void_Program";
|
||||
constexpr ConstStringRef textPrefix = ".text.";
|
||||
constexpr ConstStringRef functions = ".text.Intel_Symbol_Table_Void_Program";
|
||||
constexpr ConstStringRef dataConst = ".data.const";
|
||||
constexpr ConstStringRef dataGlobalConst = ".data.global_const";
|
||||
constexpr ConstStringRef dataGlobal = ".data.global";
|
||||
constexpr ConstStringRef dataConstString = ".data.const.string";
|
||||
constexpr ConstStringRef symtab = ".symtab";
|
||||
constexpr ConstStringRef relTablePrefix = ".rel.";
|
||||
constexpr ConstStringRef spv = ".spv";
|
||||
constexpr ConstStringRef debugPrefix = ".debug_";
|
||||
constexpr ConstStringRef debugInfo = ".debug_info";
|
||||
constexpr ConstStringRef debugAbbrev = ".debug_abbrev";
|
||||
constexpr ConstStringRef zeInfo = ".ze_info";
|
||||
constexpr ConstStringRef gtpinInfo = ".gtpin_info";
|
||||
constexpr ConstStringRef noteIntelGT = ".note.intelgt.compat";
|
||||
constexpr ConstStringRef buildOptions = ".misc.buildOptions";
|
||||
constexpr ConstStringRef vIsaAsmPrefix = ".visaasm.";
|
||||
constexpr ConstStringRef externalFunctions = "Intel_Symbol_Table_Void_Program";
|
||||
} // namespace SectionsNamesZebin
|
||||
|
||||
static constexpr ConstStringRef IntelGtNoteOwnerName = "IntelGT";
|
||||
constexpr ConstStringRef IntelGtNoteOwnerName = "IntelGT";
|
||||
enum IntelGTSectionType : uint32_t {
|
||||
ProductFamily = 1,
|
||||
GfxCore = 2,
|
||||
@@ -114,209 +114,209 @@ static_assert(sizeof(ZebinTargetFlags) == sizeof(uint32_t), "");
|
||||
|
||||
namespace ZebinKernelMetadata {
|
||||
namespace Tags {
|
||||
static constexpr ConstStringRef kernels("kernels");
|
||||
static constexpr ConstStringRef version("version");
|
||||
static constexpr ConstStringRef globalHostAccessTable("global_host_access_table");
|
||||
static constexpr ConstStringRef functions("functions");
|
||||
constexpr ConstStringRef kernels("kernels");
|
||||
constexpr ConstStringRef version("version");
|
||||
constexpr ConstStringRef globalHostAccessTable("global_host_access_table");
|
||||
constexpr ConstStringRef functions("functions");
|
||||
|
||||
namespace Kernel {
|
||||
static constexpr ConstStringRef name("name");
|
||||
static constexpr ConstStringRef executionEnv("execution_env");
|
||||
static constexpr ConstStringRef debugEnv("debug_env");
|
||||
static constexpr ConstStringRef payloadArguments("payload_arguments");
|
||||
static constexpr ConstStringRef bindingTableIndices("binding_table_indices");
|
||||
static constexpr ConstStringRef perThreadPayloadArguments("per_thread_payload_arguments");
|
||||
static constexpr ConstStringRef perThreadMemoryBuffers("per_thread_memory_buffers");
|
||||
static constexpr ConstStringRef experimentalProperties("experimental_properties");
|
||||
constexpr ConstStringRef name("name");
|
||||
constexpr ConstStringRef executionEnv("execution_env");
|
||||
constexpr ConstStringRef debugEnv("debug_env");
|
||||
constexpr ConstStringRef payloadArguments("payload_arguments");
|
||||
constexpr ConstStringRef bindingTableIndices("binding_table_indices");
|
||||
constexpr ConstStringRef perThreadPayloadArguments("per_thread_payload_arguments");
|
||||
constexpr ConstStringRef perThreadMemoryBuffers("per_thread_memory_buffers");
|
||||
constexpr ConstStringRef experimentalProperties("experimental_properties");
|
||||
|
||||
namespace ExecutionEnv {
|
||||
static constexpr ConstStringRef barrierCount("barrier_count");
|
||||
static constexpr ConstStringRef disableMidThreadPreemption("disable_mid_thread_preemption");
|
||||
static constexpr ConstStringRef grfCount("grf_count");
|
||||
static constexpr ConstStringRef has4gbBuffers("has_4gb_buffers");
|
||||
static constexpr ConstStringRef hasDpas("has_dpas");
|
||||
static constexpr ConstStringRef hasFenceForImageAccess("has_fence_for_image_access");
|
||||
static constexpr ConstStringRef hasGlobalAtomics("has_global_atomics");
|
||||
static constexpr ConstStringRef hasMultiScratchSpaces("has_multi_scratch_spaces");
|
||||
static constexpr ConstStringRef hasNoStatelessWrite("has_no_stateless_write");
|
||||
static constexpr ConstStringRef hasStackCalls("has_stack_calls");
|
||||
static constexpr ConstStringRef hwPreemptionMode("hw_preemption_mode");
|
||||
static constexpr ConstStringRef inlineDataPayloadSize("inline_data_payload_size");
|
||||
static constexpr ConstStringRef offsetToSkipPerThreadDataLoad("offset_to_skip_per_thread_data_load");
|
||||
static constexpr ConstStringRef offsetToSkipSetFfidGp("offset_to_skip_set_ffid_gp");
|
||||
static constexpr ConstStringRef requiredSubGroupSize("required_sub_group_size");
|
||||
static constexpr ConstStringRef requiredWorkGroupSize("required_work_group_size");
|
||||
static constexpr ConstStringRef requireDisableEUFusion("require_disable_eufusion");
|
||||
static constexpr ConstStringRef simdSize("simd_size");
|
||||
static constexpr ConstStringRef slmSize("slm_size");
|
||||
static constexpr ConstStringRef subgroupIndependentForwardProgress("subgroup_independent_forward_progress");
|
||||
static constexpr ConstStringRef workGroupWalkOrderDimensions("work_group_walk_order_dimensions");
|
||||
static constexpr ConstStringRef threadSchedulingMode("thread_scheduling_mode");
|
||||
constexpr ConstStringRef barrierCount("barrier_count");
|
||||
constexpr ConstStringRef disableMidThreadPreemption("disable_mid_thread_preemption");
|
||||
constexpr ConstStringRef grfCount("grf_count");
|
||||
constexpr ConstStringRef has4gbBuffers("has_4gb_buffers");
|
||||
constexpr ConstStringRef hasDpas("has_dpas");
|
||||
constexpr ConstStringRef hasFenceForImageAccess("has_fence_for_image_access");
|
||||
constexpr ConstStringRef hasGlobalAtomics("has_global_atomics");
|
||||
constexpr ConstStringRef hasMultiScratchSpaces("has_multi_scratch_spaces");
|
||||
constexpr ConstStringRef hasNoStatelessWrite("has_no_stateless_write");
|
||||
constexpr ConstStringRef hasStackCalls("has_stack_calls");
|
||||
constexpr ConstStringRef hwPreemptionMode("hw_preemption_mode");
|
||||
constexpr ConstStringRef inlineDataPayloadSize("inline_data_payload_size");
|
||||
constexpr ConstStringRef offsetToSkipPerThreadDataLoad("offset_to_skip_per_thread_data_load");
|
||||
constexpr ConstStringRef offsetToSkipSetFfidGp("offset_to_skip_set_ffid_gp");
|
||||
constexpr ConstStringRef requiredSubGroupSize("required_sub_group_size");
|
||||
constexpr ConstStringRef requiredWorkGroupSize("required_work_group_size");
|
||||
constexpr ConstStringRef requireDisableEUFusion("require_disable_eufusion");
|
||||
constexpr ConstStringRef simdSize("simd_size");
|
||||
constexpr ConstStringRef slmSize("slm_size");
|
||||
constexpr ConstStringRef subgroupIndependentForwardProgress("subgroup_independent_forward_progress");
|
||||
constexpr ConstStringRef workGroupWalkOrderDimensions("work_group_walk_order_dimensions");
|
||||
constexpr ConstStringRef threadSchedulingMode("thread_scheduling_mode");
|
||||
namespace ThreadSchedulingMode {
|
||||
static constexpr ConstStringRef ageBased("age_based");
|
||||
static constexpr ConstStringRef roundRobin("round_robin");
|
||||
static constexpr ConstStringRef roundRobinStall("round_robin_stall");
|
||||
constexpr ConstStringRef ageBased("age_based");
|
||||
constexpr ConstStringRef roundRobin("round_robin");
|
||||
constexpr ConstStringRef roundRobinStall("round_robin_stall");
|
||||
} // namespace ThreadSchedulingMode
|
||||
} // namespace ExecutionEnv
|
||||
|
||||
namespace DebugEnv {
|
||||
static constexpr ConstStringRef debugSurfaceBTI("sip_surface_bti");
|
||||
constexpr ConstStringRef debugSurfaceBTI("sip_surface_bti");
|
||||
} // namespace DebugEnv
|
||||
|
||||
namespace PayloadArgument {
|
||||
static constexpr ConstStringRef argType("arg_type");
|
||||
static constexpr ConstStringRef argIndex("arg_index");
|
||||
static constexpr ConstStringRef offset("offset");
|
||||
static constexpr ConstStringRef size("size");
|
||||
static constexpr ConstStringRef addrmode("addrmode");
|
||||
static constexpr ConstStringRef addrspace("addrspace");
|
||||
static constexpr ConstStringRef accessType("access_type");
|
||||
static constexpr ConstStringRef samplerIndex("sampler_index");
|
||||
static constexpr ConstStringRef sourceOffset("source_offset");
|
||||
static constexpr ConstStringRef slmArgAlignment("slm_alignment");
|
||||
static constexpr ConstStringRef imageType("image_type");
|
||||
static constexpr ConstStringRef imageTransformable("image_transformable");
|
||||
static constexpr ConstStringRef samplerType("sampler_type");
|
||||
constexpr ConstStringRef argType("arg_type");
|
||||
constexpr ConstStringRef argIndex("arg_index");
|
||||
constexpr ConstStringRef offset("offset");
|
||||
constexpr ConstStringRef size("size");
|
||||
constexpr ConstStringRef addrmode("addrmode");
|
||||
constexpr ConstStringRef addrspace("addrspace");
|
||||
constexpr ConstStringRef accessType("access_type");
|
||||
constexpr ConstStringRef samplerIndex("sampler_index");
|
||||
constexpr ConstStringRef sourceOffset("source_offset");
|
||||
constexpr ConstStringRef slmArgAlignment("slm_alignment");
|
||||
constexpr ConstStringRef imageType("image_type");
|
||||
constexpr ConstStringRef imageTransformable("image_transformable");
|
||||
constexpr ConstStringRef samplerType("sampler_type");
|
||||
|
||||
namespace ArgType {
|
||||
static constexpr ConstStringRef localSize("local_size");
|
||||
static constexpr ConstStringRef groupCount("group_count");
|
||||
static constexpr ConstStringRef globalIdOffset("global_id_offset");
|
||||
static constexpr ConstStringRef globalSize("global_size");
|
||||
static constexpr ConstStringRef enqueuedLocalSize("enqueued_local_size");
|
||||
static constexpr ConstStringRef privateBaseStateless("private_base_stateless");
|
||||
static constexpr ConstStringRef argByvalue("arg_byvalue");
|
||||
static constexpr ConstStringRef argBypointer("arg_bypointer");
|
||||
static constexpr ConstStringRef bufferAddress("buffer_address");
|
||||
static constexpr ConstStringRef bufferOffset("buffer_offset");
|
||||
static constexpr ConstStringRef printfBuffer("printf_buffer");
|
||||
static constexpr ConstStringRef workDimensions("work_dimensions");
|
||||
static constexpr ConstStringRef implicitArgBuffer("implicit_arg_buffer");
|
||||
constexpr ConstStringRef localSize("local_size");
|
||||
constexpr ConstStringRef groupCount("group_count");
|
||||
constexpr ConstStringRef globalIdOffset("global_id_offset");
|
||||
constexpr ConstStringRef globalSize("global_size");
|
||||
constexpr ConstStringRef enqueuedLocalSize("enqueued_local_size");
|
||||
constexpr ConstStringRef privateBaseStateless("private_base_stateless");
|
||||
constexpr ConstStringRef argByvalue("arg_byvalue");
|
||||
constexpr ConstStringRef argBypointer("arg_bypointer");
|
||||
constexpr ConstStringRef bufferAddress("buffer_address");
|
||||
constexpr ConstStringRef bufferOffset("buffer_offset");
|
||||
constexpr ConstStringRef printfBuffer("printf_buffer");
|
||||
constexpr ConstStringRef workDimensions("work_dimensions");
|
||||
constexpr ConstStringRef implicitArgBuffer("implicit_arg_buffer");
|
||||
namespace Image {
|
||||
static constexpr ConstStringRef width("image_width");
|
||||
static constexpr ConstStringRef height("image_height");
|
||||
static constexpr ConstStringRef depth("image_depth");
|
||||
static constexpr ConstStringRef channelDataType("image_channel_data_type");
|
||||
static constexpr ConstStringRef channelOrder("image_channel_order");
|
||||
static constexpr ConstStringRef arraySize("image_array_size");
|
||||
static constexpr ConstStringRef numSamples("image_num_samples");
|
||||
static constexpr ConstStringRef numMipLevels("image_num_mip_levels");
|
||||
static constexpr ConstStringRef flatBaseOffset("flat_image_baseoffset");
|
||||
static constexpr ConstStringRef flatWidth("flat_image_width");
|
||||
static constexpr ConstStringRef flatHeight("flat_image_height");
|
||||
static constexpr ConstStringRef flatPitch("flat_image_pitch");
|
||||
constexpr ConstStringRef width("image_width");
|
||||
constexpr ConstStringRef height("image_height");
|
||||
constexpr ConstStringRef depth("image_depth");
|
||||
constexpr ConstStringRef channelDataType("image_channel_data_type");
|
||||
constexpr ConstStringRef channelOrder("image_channel_order");
|
||||
constexpr ConstStringRef arraySize("image_array_size");
|
||||
constexpr ConstStringRef numSamples("image_num_samples");
|
||||
constexpr ConstStringRef numMipLevels("image_num_mip_levels");
|
||||
constexpr ConstStringRef flatBaseOffset("flat_image_baseoffset");
|
||||
constexpr ConstStringRef flatWidth("flat_image_width");
|
||||
constexpr ConstStringRef flatHeight("flat_image_height");
|
||||
constexpr ConstStringRef flatPitch("flat_image_pitch");
|
||||
} // namespace Image
|
||||
namespace Sampler {
|
||||
static constexpr ConstStringRef snapWa("sampler_snap_wa");
|
||||
static constexpr ConstStringRef normCoords("sampler_normalized");
|
||||
static constexpr ConstStringRef addrMode("sampler_address");
|
||||
constexpr ConstStringRef snapWa("sampler_snap_wa");
|
||||
constexpr ConstStringRef normCoords("sampler_normalized");
|
||||
constexpr ConstStringRef addrMode("sampler_address");
|
||||
namespace Vme {
|
||||
static constexpr ConstStringRef blockType("vme_mb_block_type");
|
||||
static constexpr ConstStringRef subpixelMode("vme_subpixel_mode");
|
||||
static constexpr ConstStringRef sadAdjustMode("vme_sad_adjust_mode");
|
||||
static constexpr ConstStringRef searchPathType("vme_search_path_type");
|
||||
constexpr ConstStringRef blockType("vme_mb_block_type");
|
||||
constexpr ConstStringRef subpixelMode("vme_subpixel_mode");
|
||||
constexpr ConstStringRef sadAdjustMode("vme_sad_adjust_mode");
|
||||
constexpr ConstStringRef searchPathType("vme_search_path_type");
|
||||
} // namespace Vme
|
||||
} // namespace Sampler
|
||||
} // namespace ArgType
|
||||
namespace ImageType {
|
||||
static constexpr ConstStringRef imageTypeBuffer("image_buffer");
|
||||
static constexpr ConstStringRef imageType1D("image_1d");
|
||||
static constexpr ConstStringRef imageType1DArray("image_1d_array");
|
||||
static constexpr ConstStringRef imageType2D("image_2d");
|
||||
static constexpr ConstStringRef imageType2DArray("image_2d_array");
|
||||
static constexpr ConstStringRef imageType3D("image_3d");
|
||||
static constexpr ConstStringRef imageTypeCube("image_cube_array");
|
||||
static constexpr ConstStringRef imageTypeCubeArray("image_buffer");
|
||||
static constexpr ConstStringRef imageType2DDepth("image_2d_depth");
|
||||
static constexpr ConstStringRef imageType2DArrayDepth("image_2d_array_depth");
|
||||
static constexpr ConstStringRef imageType2DMSAA("image_2d_msaa");
|
||||
static constexpr ConstStringRef imageType2DMSAADepth("image_2d_msaa_depth");
|
||||
static constexpr ConstStringRef imageType2DArrayMSAA("image_2d_array_msaa");
|
||||
static constexpr ConstStringRef imageType2DArrayMSAADepth("image_2d_array_msaa_depth");
|
||||
static constexpr ConstStringRef imageType2DMedia("image_2d_media");
|
||||
static constexpr ConstStringRef imageType2DMediaBlock("image_2d_media_block");
|
||||
constexpr ConstStringRef imageTypeBuffer("image_buffer");
|
||||
constexpr ConstStringRef imageType1D("image_1d");
|
||||
constexpr ConstStringRef imageType1DArray("image_1d_array");
|
||||
constexpr ConstStringRef imageType2D("image_2d");
|
||||
constexpr ConstStringRef imageType2DArray("image_2d_array");
|
||||
constexpr ConstStringRef imageType3D("image_3d");
|
||||
constexpr ConstStringRef imageTypeCube("image_cube_array");
|
||||
constexpr ConstStringRef imageTypeCubeArray("image_buffer");
|
||||
constexpr ConstStringRef imageType2DDepth("image_2d_depth");
|
||||
constexpr ConstStringRef imageType2DArrayDepth("image_2d_array_depth");
|
||||
constexpr ConstStringRef imageType2DMSAA("image_2d_msaa");
|
||||
constexpr ConstStringRef imageType2DMSAADepth("image_2d_msaa_depth");
|
||||
constexpr ConstStringRef imageType2DArrayMSAA("image_2d_array_msaa");
|
||||
constexpr ConstStringRef imageType2DArrayMSAADepth("image_2d_array_msaa_depth");
|
||||
constexpr ConstStringRef imageType2DMedia("image_2d_media");
|
||||
constexpr ConstStringRef imageType2DMediaBlock("image_2d_media_block");
|
||||
} // namespace ImageType
|
||||
namespace SamplerType {
|
||||
static constexpr ConstStringRef samplerTypeTexture("texture");
|
||||
static constexpr ConstStringRef samplerType8x8("sample_8x8");
|
||||
static constexpr ConstStringRef samplerType2DConsolve8x8("sample_8x8_2dconvolve");
|
||||
static constexpr ConstStringRef samplerTypeErode8x8("sample_8x8_erode");
|
||||
static constexpr ConstStringRef samplerTypeDilate8x8("sample_8x8_dilate");
|
||||
static constexpr ConstStringRef samplerTypeMinMaxFilter8x8("sample_8x8_minmaxfilter");
|
||||
static constexpr ConstStringRef samplerTypeCentroid8x8("sample_8x8_centroid");
|
||||
static constexpr ConstStringRef samplerTypeBoolCentroid8x8("sample_8x8_bool_centroid");
|
||||
static constexpr ConstStringRef samplerTypeBoolSum8x8("sample_8x8_bool_sum");
|
||||
static constexpr ConstStringRef samplerTypeVD("vd");
|
||||
static constexpr ConstStringRef samplerTypeVE("ve");
|
||||
static constexpr ConstStringRef samplerTypeVME("vme");
|
||||
constexpr ConstStringRef samplerTypeTexture("texture");
|
||||
constexpr ConstStringRef samplerType8x8("sample_8x8");
|
||||
constexpr ConstStringRef samplerType2DConsolve8x8("sample_8x8_2dconvolve");
|
||||
constexpr ConstStringRef samplerTypeErode8x8("sample_8x8_erode");
|
||||
constexpr ConstStringRef samplerTypeDilate8x8("sample_8x8_dilate");
|
||||
constexpr ConstStringRef samplerTypeMinMaxFilter8x8("sample_8x8_minmaxfilter");
|
||||
constexpr ConstStringRef samplerTypeCentroid8x8("sample_8x8_centroid");
|
||||
constexpr ConstStringRef samplerTypeBoolCentroid8x8("sample_8x8_bool_centroid");
|
||||
constexpr ConstStringRef samplerTypeBoolSum8x8("sample_8x8_bool_sum");
|
||||
constexpr ConstStringRef samplerTypeVD("vd");
|
||||
constexpr ConstStringRef samplerTypeVE("ve");
|
||||
constexpr ConstStringRef samplerTypeVME("vme");
|
||||
} // namespace SamplerType
|
||||
namespace MemoryAddressingMode {
|
||||
static constexpr ConstStringRef stateless("stateless");
|
||||
static constexpr ConstStringRef stateful("stateful");
|
||||
static constexpr ConstStringRef bindless("bindless");
|
||||
static constexpr ConstStringRef sharedLocalMemory("slm");
|
||||
constexpr ConstStringRef stateless("stateless");
|
||||
constexpr ConstStringRef stateful("stateful");
|
||||
constexpr ConstStringRef bindless("bindless");
|
||||
constexpr ConstStringRef sharedLocalMemory("slm");
|
||||
} // namespace MemoryAddressingMode
|
||||
namespace AddrSpace {
|
||||
static constexpr ConstStringRef global("global");
|
||||
static constexpr ConstStringRef local("local");
|
||||
static constexpr ConstStringRef constant("constant");
|
||||
static constexpr ConstStringRef image("image");
|
||||
static constexpr ConstStringRef sampler("sampler");
|
||||
constexpr ConstStringRef global("global");
|
||||
constexpr ConstStringRef local("local");
|
||||
constexpr ConstStringRef constant("constant");
|
||||
constexpr ConstStringRef image("image");
|
||||
constexpr ConstStringRef sampler("sampler");
|
||||
} // namespace AddrSpace
|
||||
namespace AccessType {
|
||||
static constexpr ConstStringRef readonly("readonly");
|
||||
static constexpr ConstStringRef writeonly("writeonly");
|
||||
static constexpr ConstStringRef readwrite("readwrite");
|
||||
constexpr ConstStringRef readonly("readonly");
|
||||
constexpr ConstStringRef writeonly("writeonly");
|
||||
constexpr ConstStringRef readwrite("readwrite");
|
||||
} // namespace AccessType
|
||||
} // namespace PayloadArgument
|
||||
|
||||
namespace BindingTableIndex {
|
||||
static constexpr ConstStringRef btiValue("bti_value");
|
||||
static constexpr ConstStringRef argIndex("arg_index");
|
||||
constexpr ConstStringRef btiValue("bti_value");
|
||||
constexpr ConstStringRef argIndex("arg_index");
|
||||
} // namespace BindingTableIndex
|
||||
|
||||
namespace PerThreadPayloadArgument {
|
||||
static constexpr ConstStringRef argType("arg_type");
|
||||
static constexpr ConstStringRef offset("offset");
|
||||
static constexpr ConstStringRef size("size");
|
||||
constexpr ConstStringRef argType("arg_type");
|
||||
constexpr ConstStringRef offset("offset");
|
||||
constexpr ConstStringRef size("size");
|
||||
namespace ArgType {
|
||||
static constexpr ConstStringRef packedLocalIds("packed_local_ids");
|
||||
static constexpr ConstStringRef localId("local_id");
|
||||
constexpr ConstStringRef packedLocalIds("packed_local_ids");
|
||||
constexpr ConstStringRef localId("local_id");
|
||||
} // namespace ArgType
|
||||
} // namespace PerThreadPayloadArgument
|
||||
|
||||
namespace PerThreadMemoryBuffer {
|
||||
static constexpr ConstStringRef allocationType("type");
|
||||
static constexpr ConstStringRef memoryUsage("usage");
|
||||
static constexpr ConstStringRef size("size");
|
||||
static constexpr ConstStringRef isSimtThread("is_simt_thread");
|
||||
static constexpr ConstStringRef slot("slot");
|
||||
constexpr ConstStringRef allocationType("type");
|
||||
constexpr ConstStringRef memoryUsage("usage");
|
||||
constexpr ConstStringRef size("size");
|
||||
constexpr ConstStringRef isSimtThread("is_simt_thread");
|
||||
constexpr ConstStringRef slot("slot");
|
||||
namespace AllocationType {
|
||||
static constexpr ConstStringRef global("global");
|
||||
static constexpr ConstStringRef scratch("scratch");
|
||||
static constexpr ConstStringRef slm("slm");
|
||||
constexpr ConstStringRef global("global");
|
||||
constexpr ConstStringRef scratch("scratch");
|
||||
constexpr ConstStringRef slm("slm");
|
||||
} // namespace AllocationType
|
||||
namespace MemoryUsage {
|
||||
static constexpr ConstStringRef privateSpace("private_space");
|
||||
static constexpr ConstStringRef spillFillSpace("spill_fill_space");
|
||||
static constexpr ConstStringRef singleSpace("single_space");
|
||||
constexpr ConstStringRef privateSpace("private_space");
|
||||
constexpr ConstStringRef spillFillSpace("spill_fill_space");
|
||||
constexpr ConstStringRef singleSpace("single_space");
|
||||
} // namespace MemoryUsage
|
||||
} // namespace PerThreadMemoryBuffer
|
||||
namespace ExperimentalProperties {
|
||||
static constexpr ConstStringRef hasNonKernelArgLoad("has_non_kernel_arg_load");
|
||||
static constexpr ConstStringRef hasNonKernelArgStore("has_non_kernel_arg_store");
|
||||
static constexpr ConstStringRef hasNonKernelArgAtomic("has_non_kernel_arg_atomic");
|
||||
constexpr ConstStringRef hasNonKernelArgLoad("has_non_kernel_arg_load");
|
||||
constexpr ConstStringRef hasNonKernelArgStore("has_non_kernel_arg_store");
|
||||
constexpr ConstStringRef hasNonKernelArgAtomic("has_non_kernel_arg_atomic");
|
||||
} // namespace ExperimentalProperties
|
||||
} // namespace Kernel
|
||||
|
||||
namespace GlobalHostAccessTable {
|
||||
static constexpr ConstStringRef deviceName("device_name");
|
||||
static constexpr ConstStringRef hostName("host_name");
|
||||
constexpr ConstStringRef deviceName("device_name");
|
||||
constexpr ConstStringRef hostName("host_name");
|
||||
} // namespace GlobalHostAccessTable
|
||||
|
||||
namespace Function {
|
||||
static constexpr ConstStringRef name("name");
|
||||
static constexpr ConstStringRef executionEnv("execution_env");
|
||||
constexpr ConstStringRef name("name");
|
||||
constexpr ConstStringRef executionEnv("execution_env");
|
||||
using namespace Kernel::ExecutionEnv;
|
||||
} // namespace Function
|
||||
|
||||
@@ -367,32 +367,32 @@ using WorkgroupWalkOrderDimensionsT = int32_t[3];
|
||||
using ThreadSchedulingModeT = ThreadSchedulingMode;
|
||||
|
||||
namespace Defaults {
|
||||
static constexpr BarrierCountT barrierCount = 0;
|
||||
static constexpr DisableMidThreadPreemptionT disableMidThreadPreemption = false;
|
||||
static constexpr Has4GBBuffersT has4GBBuffers = false;
|
||||
static constexpr HasDpasT hasDpas = false;
|
||||
static constexpr HasFenceForImageAccessT hasFenceForImageAccess = false;
|
||||
static constexpr HasGlobalAtomicsT hasGlobalAtomics = false;
|
||||
static constexpr HasMultiScratchSpacesT hasMultiScratchSpaces = false;
|
||||
static constexpr HasNonKernelArgAtomicT hasNonKernelArgAtomic = false;
|
||||
static constexpr HasNonKernelArgLoadT hasNonKernelArgLoad = false;
|
||||
static constexpr HasNonKernelArgStoreT hasNonKernelArgStore = false;
|
||||
static constexpr HasNoStatelessWriteT hasNoStatelessWrite = false;
|
||||
static constexpr HasStackCallsT hasStackCalls = false;
|
||||
static constexpr HwPreemptionModeT hwPreemptionMode = -1;
|
||||
static constexpr InlineDataPayloadSizeT inlineDataPayloadSize = 0;
|
||||
static constexpr OffsetToSkipPerThreadDataLoadT offsetToSkipPerThreadDataLoad = 0;
|
||||
static constexpr OffsetToSkipSetFfidGpT offsetToSkipSetFfidGp = 0;
|
||||
static constexpr RequiredSubGroupSizeT requiredSubGroupSize = 0;
|
||||
static constexpr RequiredWorkGroupSizeT requiredWorkGroupSize = {0, 0, 0};
|
||||
static constexpr RequireDisableEUFusionT requireDisableEUFusion = false;
|
||||
static constexpr SlmSizeT slmSize = 0;
|
||||
static constexpr SubgroupIndependentForwardProgressT subgroupIndependentForwardProgress = false;
|
||||
static constexpr WorkgroupWalkOrderDimensionsT workgroupWalkOrderDimensions = {0, 1, 2};
|
||||
static constexpr ThreadSchedulingModeT threadSchedulingMode = ThreadSchedulingModeUnknown;
|
||||
constexpr BarrierCountT barrierCount = 0;
|
||||
constexpr DisableMidThreadPreemptionT disableMidThreadPreemption = false;
|
||||
constexpr Has4GBBuffersT has4GBBuffers = false;
|
||||
constexpr HasDpasT hasDpas = false;
|
||||
constexpr HasFenceForImageAccessT hasFenceForImageAccess = false;
|
||||
constexpr HasGlobalAtomicsT hasGlobalAtomics = false;
|
||||
constexpr HasMultiScratchSpacesT hasMultiScratchSpaces = false;
|
||||
constexpr HasNonKernelArgAtomicT hasNonKernelArgAtomic = false;
|
||||
constexpr HasNonKernelArgLoadT hasNonKernelArgLoad = false;
|
||||
constexpr HasNonKernelArgStoreT hasNonKernelArgStore = false;
|
||||
constexpr HasNoStatelessWriteT hasNoStatelessWrite = false;
|
||||
constexpr HasStackCallsT hasStackCalls = false;
|
||||
constexpr HwPreemptionModeT hwPreemptionMode = -1;
|
||||
constexpr InlineDataPayloadSizeT inlineDataPayloadSize = 0;
|
||||
constexpr OffsetToSkipPerThreadDataLoadT offsetToSkipPerThreadDataLoad = 0;
|
||||
constexpr OffsetToSkipSetFfidGpT offsetToSkipSetFfidGp = 0;
|
||||
constexpr RequiredSubGroupSizeT requiredSubGroupSize = 0;
|
||||
constexpr RequiredWorkGroupSizeT requiredWorkGroupSize = {0, 0, 0};
|
||||
constexpr RequireDisableEUFusionT requireDisableEUFusion = false;
|
||||
constexpr SlmSizeT slmSize = 0;
|
||||
constexpr SubgroupIndependentForwardProgressT subgroupIndependentForwardProgress = false;
|
||||
constexpr WorkgroupWalkOrderDimensionsT workgroupWalkOrderDimensions = {0, 1, 2};
|
||||
constexpr ThreadSchedulingModeT threadSchedulingMode = ThreadSchedulingModeUnknown;
|
||||
} // namespace Defaults
|
||||
|
||||
static constexpr ConstStringRef required[] = {
|
||||
constexpr ConstStringRef required[] = {
|
||||
Tags::Kernel::ExecutionEnv::grfCount,
|
||||
Tags::Kernel::ExecutionEnv::simdSize};
|
||||
|
||||
@@ -433,7 +433,7 @@ namespace DebugEnv {
|
||||
using DebugSurfaceBTIT = int32_t;
|
||||
|
||||
namespace Defaults {
|
||||
static constexpr DebugSurfaceBTIT debugSurfaceBTI = -1;
|
||||
constexpr DebugSurfaceBTIT debugSurfaceBTI = -1;
|
||||
} // namespace Defaults
|
||||
|
||||
struct DebugEnvBaseT {
|
||||
@@ -576,10 +576,10 @@ using SlmAlignmentT = uint8_t;
|
||||
using SamplerIndexT = int32_t;
|
||||
|
||||
namespace Defaults {
|
||||
static constexpr ArgIndexT argIndex = -1;
|
||||
static constexpr SlmAlignmentT slmArgAlignment = 16U;
|
||||
static constexpr SamplerIndexT samplerIndex = -1;
|
||||
static constexpr SourceOffseT sourceOffset = -1;
|
||||
constexpr ArgIndexT argIndex = -1;
|
||||
constexpr SlmAlignmentT slmArgAlignment = 16U;
|
||||
constexpr SamplerIndexT samplerIndex = -1;
|
||||
constexpr SourceOffseT sourceOffset = -1;
|
||||
} // namespace Defaults
|
||||
|
||||
struct PayloadArgumentBaseT {
|
||||
@@ -633,8 +633,8 @@ using IsSimtThreadT = bool;
|
||||
using Slot = int32_t;
|
||||
|
||||
namespace Defaults {
|
||||
static constexpr IsSimtThreadT isSimtThread = false;
|
||||
static constexpr Slot slot = 0U;
|
||||
constexpr IsSimtThreadT isSimtThread = false;
|
||||
constexpr Slot slot = 0U;
|
||||
} // namespace Defaults
|
||||
|
||||
struct PerThreadMemoryBufferBaseT {
|
||||
|
||||
Reference in New Issue
Block a user