Skip to content
This repository has been archived by the owner on Dec 8, 2022. It is now read-only.

Simplify the phrasing of robust-access rules #4

Closed
dneto0 opened this issue Nov 21, 2018 · 3 comments · Fixed by #5
Closed

Simplify the phrasing of robust-access rules #4

dneto0 opened this issue Nov 21, 2018 · 3 comments · Fixed by #5

Comments

@dneto0
Copy link
Contributor

dneto0 commented Nov 21, 2018

See #3 (review)

The phrasing for behaviour on out-of-bounds accesses for robust-access is confusing:

Similarly to OpenGL's GL_KHR_robust_buffer extension, out of bounds accesses must produce one of the following behaviors:

  • Be discarded for writes
  • Access any location within the resource for reads and writes
  • Return zero values for reads or (0, 0, 0, X) with X being 0, 1, -1, or extrema for integers, or -0.0, +0.0, -1.0, +1.0 for floating point values
  • Atomics can return undefined values.
@dneto0
Copy link
Contributor Author

dneto0 commented Nov 21, 2018

The Vulkan spec has this phrased much more clearly:

https://github.com/KhronosGroup/Vulkan-Docs/blob/master/chapters/features.txt#L207

@dneto0
Copy link
Contributor Author

dneto0 commented Nov 21, 2018

What do you think @Kangz

@Kangz
Copy link
Collaborator

Kangz commented Nov 22, 2018

I agree that the phrasing in Vulkan is much more clear and detailed. The current PR is "good enough" for now but definitely not spec quality.

kenrussell added a commit to kenrussell/spirv-execution-env that referenced this issue Nov 27, 2018
Create a separate section defining out-of-bounds access behavior for
loads, writes, atomics, and pointer creation, based on the previous
text as well as that in the Vulkan 1.0 specification (used with
attribution). Rename section "Out of bounds" to "Opcodes Potentially
Resulting in Out-Of-Bounds Accesses" and refer to this new section.

Attempt to resolve gpuweb#4.
@dneto0 dneto0 closed this as completed in #5 Nov 28, 2018
dneto0 pushed a commit that referenced this issue Nov 28, 2018
Create a separate section defining out-of-bounds access behavior for
loads, writes, atomics, and pointer creation, based on the previous
text as well as that in the Vulkan 1.0 specification (used with
attribution). Rename section "Out of bounds" to "Opcodes Potentially
Resulting in Out-Of-Bounds Accesses" and refer to this new section.

Attempt to resolve #4.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants