microsoft / microsoft/DirectXShaderCompiler

DxilValidation: check for undef float RayDesc inputs

Open
#7,380 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug validation
Dominant language
C++
Stars
3.7k
Forks
900
Avg merge
2d 11h
Merged PRs (30d)
44

Description

This is a follow up to a comment thread here, in which dx.op.hitObject_MakeMiss may have undef float input arguments, without DxilValidation catching this.

I don't think we should allow this. Presumably, this would lead to undefined results retrieved from accessors in a miss shader during Invoke().

If there's an argument for allowing this, that would be good to know.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing DxilValidation handling for dx.op.hitObject_MakeMiss and its RayDesc float inputs. Check how undef values are represented before Invoke() accessors are used. Done means the validation behavior for undef float inputs is decided and covered by an appropriate validation test, or the issue records why allowing them is correct.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.