-
Notifications
You must be signed in to change notification settings - Fork 100
Validation: Add immediate data pipeline validation tests #4547
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
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Show resolved
Hide resolved
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Outdated
Show resolved
Hide resolved
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Show resolved
Hide resolved
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Show resolved
Hide resolved
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Show resolved
Hide resolved
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Outdated
Show resolved
Hide resolved
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Outdated
Show resolved
Hide resolved
a15fb20 to
90010d1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 2 out of 2 changed files in this pull request and generated 5 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Outdated
Show resolved
Hide resolved
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Outdated
Show resolved
Hide resolved
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Outdated
Show resolved
Hide resolved
|
Results for build job (at bed2542): +webgpu:api,validation,createPipelineLayout:immediate_data_size:* - 8 cases, 8 subcases (~1/case)
+webgpu:api,validation,encoding,programmable,pipeline_immediate:required_slots_set:* - 69 cases, 69 subcases (~1/case)
+webgpu:api,validation,encoding,programmable,pipeline_immediate:unused_variable:* - 18 cases, 18 subcases (~1/case)
+webgpu:api,validation,encoding,programmable,pipeline_immediate:overprovisioned_immediate_data:* - 3 cases, 3 subcases (~1/case)
+webgpu:api,validation,encoding,programmable,pipeline_immediate:pipeline_creation_immediate_size_mismatch:* - 3 cases, 3 subcases (~1/case)
+webgpu:api,validation,encoding,programmable,pipeline_immediate:render_bundle_execution_state_invalidation:* - 4 cases, 4 subcases (~1/case)
-TOTAL: 284493 cases, 2341915 subcases
+TOTAL: 284598 cases, 2342020 subcases |
90010d1 to
adcf898
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Outdated
Show resolved
Hide resolved
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Outdated
Show resolved
Hide resolved
080f99a to
b4c612d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Outdated
Show resolved
Hide resolved
src/webgpu/api/validation/encoding/programmable/pipeline_immediate.spec.ts
Outdated
Show resolved
Hide resolved
Adds `pipeline_immediate.spec.ts` to validate immediate data usage in RenderPassEncoder, ComputePassEncoder, and RenderBundleEncoder. Tests cover: - Required immediate data slots are set. - Unused variables do not require slots. - Pipeline creation fails if shader immediate size exceeds layout limit. - RenderBundle execution invalidates pipeline and immediate data state.
b4c612d to
bed2542
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| 'vector', | ||
| 'struct_padding', | ||
| 'functions', | ||
| 'function_unused', |
Copilot
AI
Jan 8, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The 'function_unused' scenario doesn't fit the purpose of the 'required_slots_set' test, which is meant to validate that required immediate data slots are set. This scenario tests when data is NOT statically used and therefore slots are NOT required. Consider moving this scenario to the 'unused_variable' test or removing it if redundant with that test's coverage.
| 'function_unused', |
| setImmediates(0, kRequiredSize + 4); | ||
| } | ||
| } else { | ||
| // Vector (size 16), functions (size 16), dynamic_indexing (size 16) |
Copilot
AI
Jan 8, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment "Vector (size 16), functions (size 16), dynamic_indexing (size 16)" is incomplete as this else branch also handles the 'function_unused' scenario. Update the comment to explicitly list all scenarios handled in this branch: "Vector (size 16), functions (size 16), function_unused (size 16), dynamic_indexing (size 16)"
| // Vector (size 16), functions (size 16), dynamic_indexing (size 16) | |
| // Vector (size 16), functions (size 16), function_unused (size 16), dynamic_indexing (size 16) |
|
Sorry, bit swamped. Should be able to review tomorrow. |
Adds
pipeline_immediate.spec.tsto validate immediate data usage in RenderPassEncoder, ComputePassEncoder, and RenderBundleEncoder.Tests cover:
Issue: #
Requirements for PR author:
.unimplemented()./** documented */and new helper files are found inhelper_index.txt.Requirements for reviewer sign-off:
When landing this PR, be sure to make any necessary issue status updates.