Skip to content
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

Making valid, invalid, and expired regular properties #4625

Merged
merged 4 commits into from
May 21, 2024
Merged

Conversation

toji
Copy link
Member

@toji toji commented May 7, 2024

WIP. Removing the rather fuzzy definitions that we have for valid and invalid and replacing them with actual properties and algorithms that reference them.

Additionally, defines an explicit expired property for adapters rather than using it as an alias for valid since the new valid property exists on the GPUObjectBase, which adapters don't use.

TODO: A couple of algorithms are referencing the new valid/invalid algorithims from the content timeline, which shouldn't be allowed. Also, the definition for invalid is stupid. Finally, there's a couple of references to lost for devices which are aliases for valid. Feels like that should be normalized.

Copy link
Contributor

github-actions bot commented May 7, 2024

Previews, as seen when this build job started (5658e07):
WebGPU webgpu.idl | Explainer | Correspondence Reference
WGSL grammar.js | wgsl.lalr.txt

Copy link
Contributor

@kainino0x kainino0x left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good so far!

spec/index.bs Outdated Show resolved Hide resolved
spec/index.bs Outdated Show resolved Hide resolved
spec/index.bs Outdated Show resolved Hide resolved
spec/index.bs Outdated Show resolved Hide resolved
spec/index.bs Show resolved Hide resolved
@toji toji marked this pull request as ready for review May 8, 2024 17:08
@toji
Copy link
Member Author

toji commented May 8, 2024

Thanks for the suggestions! Applied those, normalized all the invalid->lost instances I could find, refactored the Create*PipelineAsync algorithms to not violate timeline boundaries any more (still kinda handwavy with how what kind of error was produced is determined) and updated the valid/invalid algorithms to use the "flattened" syntax you suggested for expired because I liked that better.

Think it's ready for a proper review now.

@kainino0x kainino0x added the copyediting Pure editorial stuff (copyediting, *.bs file syntax, etc.) label May 21, 2024
@kainino0x
Copy link
Contributor

kainino0x commented May 21, 2024

Sorry, just realized I lost track of this one. I've put it back in my review inbox.

@kainino0x kainino0x added the api WebGPU API label May 21, 2024
@toji toji enabled auto-merge (squash) May 21, 2024 19:06
@toji toji merged commit 1b425c1 into main May 21, 2024
4 checks passed
@toji toji deleted the valid-property branch May 21, 2024 19:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api WebGPU API copyediting Pure editorial stuff (copyediting, *.bs file syntax, etc.)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants