Developer reports

Vulkan push-constant update coverage

Trace missing byte/stage coverage and overlap-required update flags.

Your inputs

Start with an example

Your inputs stay in your browser.

Your result

Example result

How it works

Check the supplied core-stage layout rules first. Split each update at layout boundaries. For each segment compare requested stages with covering stages: 01795 requires coverage for every requested stage; 01796 requires the update flags to include every overlapping range’s stages.

Vertex bytes 0–15 and fragment bytes 8–23 overlap at 8–15. An update there needs both flags. Requesting only vertex has coverage but fails the overlap-required fragment rule.

Limits

Selected range rules from the pinned Vulkan source only. Up to 256 ranges/updates, 32 flags per record, 500000 input characters, 131584 interval comparisons and an 8 MiB report. Unsigned 32-bit fields use exact non-wrapping sums. Six core stage bits and ALL_GRAPHICS only; nonempty flag arrays are a declared subset. Repeated stages across layout records invalidate the supplied layout even when byte ranges are disjoint. Zero-size updates have vacuous coverage, unlike zero-size layout ranges. Device limits, shader layouts/bytes, pointers, features, command state and complete Vulkan validity are not established.