Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DXC hangs when writing a bitfield in groupshared memory, indexed by a numeric literal #6997

Open
stanard opened this issue Nov 2, 2024 · 0 comments
Labels
bug Bug, regression, crash check-in-clang See if this repros in clang as well needs-triage Awaiting triage
Milestone

Comments

@stanard
Copy link
Member

stanard commented Nov 2, 2024

Description
I have a struct that includes bitfields. There is an array of these structs in groupshared memory. Indexing the array with an integer literal to write the bitfield causes DXC to hang.

Steps to Reproduce

dxc.exe /Zi -Qembed_debug /Tcs_6_6

struct MyStruct
{
    uint32_t token : 32;
};

groupshared MyStruct gs_array[1];

[numthreads(32, 1, 1)]
void main(uint GI : SV_GroupIndex)
{
    // literal index into local array to write a bitfield
    MyStruct array[1];
    array[0].token = 3; // <-- FINE

    // variable index into groupshared memory to write a bitfield
    uint i = 0;
    gs_array[i].token = 3; // <-- FINE

    // literal index into groupshared memory to write a bitfield
    gs_array[0].token = 3; // <-- HANG
}

Actual Behavior
DXC hangs

Environment

  • DXC version (dxcompiler.dll: 1.8 - 1.8.2407.7 (416fab6); dxil.dll: 1.8(101.8.2407.12))
  • Host Operating System "Windows 11 24H2"
@stanard stanard added bug Bug, regression, crash needs-triage Awaiting triage labels Nov 2, 2024
@damyanp damyanp added the check-in-clang See if this repros in clang as well label Nov 5, 2024
@damyanp damyanp added this to the Dormant milestone Nov 5, 2024
@damyanp damyanp moved this to Triaged in HLSL Triage Nov 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Bug, regression, crash check-in-clang See if this repros in clang as well needs-triage Awaiting triage
Projects
Status: Triaged
Development

No branches or pull requests

2 participants