Skip to content

[SPIRV] Allow globallycoherent on DescriptorHeap accesses (#7740)#8513

Open
SteveUrquhart wants to merge 2 commits into
microsoft:mainfrom
SteveUrquhart:allow-globallycoherent-spirv
Open

[SPIRV] Allow globallycoherent on DescriptorHeap accesses (#7740)#8513
SteveUrquhart wants to merge 2 commits into
microsoft:mainfrom
SteveUrquhart:allow-globallycoherent-spirv

Conversation

@SteveUrquhart

Copy link
Copy Markdown
Contributor

This PR allows the SpirvEmitter to emit globallycoherent in combination with ResourceDescriptorHeap.

@SteveUrquhart

Copy link
Copy Markdown
Contributor Author

This addresses #7740

@llvm-beanz

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

Comment thread tools/clang/lib/SPIRV/SpirvEmitter.cpp Outdated
Comment thread tools/clang/lib/SPIRV/SpirvEmitter.cpp Outdated
llvm-beanz and others added 2 commits June 22, 2026 20:18
PerformHLSLConversion forced the ICK_Flat_Conversion cast target to the
structural/unqualified type, discarding the 'globallycoherent' (and
'reordercoherent') AttributedType. As a result, the converted
expression's
type no longer reflected the coherence of its destination, forcing
consumers
to reconstruct that information from declarations.

Re-apply the coherence AttributedType to the flat-conversion result
when the
target is a resource type, so the converted expression's type carries
the
coherence of its destination (e.g. a ResourceDescriptorHeap[] access
used to
initialize a 'globallycoherent' resource).
@SteveUrquhart SteveUrquhart force-pushed the allow-globallycoherent-spirv branch from 7eb7c0a to 60547e1 Compare June 25, 2026 21:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: New

Development

Successfully merging this pull request may close these issues.

2 participants