Skip to content

[DirectX] Capture non uniform index flag during lowering and use it in DXIL ops that creates resource handle #155701

@hekota

Description

@hekota

Introduce llvm.{dx|svp}.resource.nonuniformindex intrinsic that will be used when a resource index is not guaranteed to be uniform across threads (HLSL function NonUniformResourceIndex).

When a resource index value uses this intrinsic, it needs to be captured during DXIL lowering and reflected in the NonUniform flag on DXIL create handle ops (dx.op.createHandle and dx.op.createHandleFromBinding). Handling of SPIR-V version of the intrinsic work will be done separately.

The DXIL lowering layer also needs to make sure all calls to llvm.dx.resource.nonuniformindex are removed.

Metadata

Metadata

Assignees

Type

No type

Projects

Status

Closed

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions