Entry point arguments and return values#1426
Conversation
wgsl/index.bs
Outdated
| // OpDecorate %gl_SampleMaskIn BuiltIn SampleMask ; an input variable | ||
| // OpDecorate %gl_SampleMaskIn Flat | ||
| [[stage(fragment)]] | ||
| fn main( |
There was a problem hiding this comment.
These functions should all have unique names, so probably vert_main, frag_main and comp_main so that we can compile the example.
There was a problem hiding this comment.
would be great to compile it on CI ;)
There was a problem hiding this comment.
@ben-clayton has a script to run them through Tint, but it would be tricky in most cases as the implementation lags the spec, so new spec features would always show up as broken.
|
@dj2 your thoughtful review is exactly what this PR needed, thank you! |
e695e4b to
6901d13
Compare
dneto0
left a comment
There was a problem hiding this comment.
Looks good to me on this reading.
Thanks
|
|
||
| ### Pipeline Input and Output Interface ### {#pipeline-inputs-outputs} | ||
|
|
||
| The <dfn dfn>Entry point IO type</dfn>s include the following: |
There was a problem hiding this comment.
I would quibble that these aren't new types but don't want to block on this.
If I think of a better way to say it I can post a followup PR.
|
The group has agreed to land this on the today's call. |
This is required for the grammar to support the changes made in gpuweb#1426. Also removes two obselete validation rules and replaces them with a new one to state that builtin/location decorations can only appear on entry points.
This is required for the grammar to support the changes made in gpuweb#1426. Also removes two obsolete validation rules and replaces them with a new one to state that builtin/location decorations can only appear on entry points.
This is required for the grammar to support the changes made in gpuweb#1426. Also removes two obsolete validation rules.
This is required for the grammar to support the changes made in #1426. Also removes two obsolete validation rules.
Entry points are now allowed to have parameters and return types as part of the changes made in: gpuweb/gpuweb#1426 Bug: tint:512 Change-Id: I20caa940f6d194f62ce1dfa5d247927c5b5a9628 Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/44080 Auto-Submit: James Price <[email protected]> Commit-Queue: Ben Clayton <[email protected]> Reviewed-by: Ben Clayton <[email protected]>
This PR adds unimplemented stubs for the synchronization builtin functions. * `storageBarrier` * `workgroupBarrier` Issue gpuweb#1249, gpuweb#1295
Fixes #1315
I'm fairly sure this is incomplete, but it captures the core of the changes.
The example code hasn't been touched since WHSL times :)