VkShaderInstrumentationMetricDataHeaderARM(3)

# VkShaderInstrumentationMetricDataHeaderARM(3) Manual Page

## Name

VkShaderInstrumentationMetricDataHeaderARM - Structure describing the header of a metric block

## C Specification

The shader instrumentation metrics block header is defined as:

    // Provided by VK_ARM_shader_instrumentation
    typedef struct VkShaderInstrumentationMetricDataHeaderARM {
        uint32_t              resultIndex;
        uint32_t              resultSubIndex;
        VkShaderStageFlags    stages;
        uint32_t              basicBlockIndex;
    } VkShaderInstrumentationMetricDataHeaderARM;

## Members

- `resultIndex` is the result index of the metric block, as captured when the command was recorded.

- `resultSubIndex` is a secondary index with the result index, explained further below.

- `stages` is a bitfield of VkShaderStageFlagBits describing the shader stages that the metric block is for.

- `basicBlockIndex` is the index of the basic block within the shader that the metric block is for.

## Description

Valid Usage (Implicit)

- VUID-VkShaderInstrumentationMetricDataHeaderARM-stages-parameter
  `stages` must be a valid combination of VkShaderStageFlagBits values

- VUID-VkShaderInstrumentationMetricDataHeaderARM-stages-requiredbitmask
  `stages` must not be `0`

## See Also

VK_ARM_shader_instrumentation, VkShaderStageFlags

## Document Notes

For more information, see the Vulkan Specification.

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0