microsoft / hlsl-specs

HLSL Specifications
MIT License
124 stars 34 forks source link

[INF-0004] Validator should fill hash with PREVIEW pattern for pre-release DXIL version #293

Open tex3d opened 3 months ago

tex3d commented 3 months ago

Which proposal does this relate to? proposals/infra/INF-0004-validator-hashing.md

Describe the issue or outstanding question. The spec does not address pre-release DXIL version behavior. We need to keep track of the last released stable DXIL version and only hash the container if the current DXIL version is less than or equal to this version. We should set the hash to the PREVIEW pattern otherwise.

Additional context Previously, we would avoid hashing pre-release DXIL by only releasing the external hashing validator once we had a final release for that DXIL version. Now that hashing is included in every intermediate version of the compiler built from the open source project, we need another mechanism to differentiate the release hash behavior from in-development preview features.

llvm-beanz commented 3 months ago

For pre-release shader models DXC should run the validator, but it should not apply the hash. Instead it should apply the PREVIEW sentinel value from the table above. This allows us to differentiate between shaders validated by a "final" validator.

Source

Can you be more clear about how you think this should be modified? I believe this covers the intent although perhaps the wording could be more clear.

damyanp commented 3 months ago

@tex3d - can you mark this for triage again once you've had a chance to address Chris's comment above please?