Skip to content

[DirectX] DXIL container mismatch for unbounded resource arrays #159679

@hekota

Description

@hekota

DXIL container compiled from source code that has an unbounded resource array fails validation:

RWBuffer<int> Buf[] : register(u0);

[numthreads(4,2,1)]
void main(uint GI : SV_GroupIndex) {
  for (int i = 0; i < 4; i++) {
    Buf[NonUniformResourceIndex(GI)][i] = GI * 100 + Buf[NonUniformResourceIndex(GI)][i];
  }
}

This is the error reported by DXV:

error: DXIL container mismatch for 'ResourceBindInfo' between 'PSV0' part:('PSVResourceBindInfo:
  Space: 0
  LowerBound: 0
  UpperBound: 4294967294
  ResType: UAVTyped
  ResKind: TypedBuffer
  ResFlags: None
') and DXIL module:('PSVResourceBindInfo:
  Space: 0
  LowerBound: 0
  UpperBound: 4294967295
  ResType: UAVTyped
  ResKind: TypedBuffer
  ResFlags: None
')
error: Container part 'Pipeline State Validation' does not match expected for module.
Validation failed.

Metadata

Metadata

Assignees

Labels

Type

Projects

Status

Closed

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions