Skip to content

Commit

Permalink
GLSL_EXT_nontemporal_keyword: Behave strictly when passing to functions
Browse files Browse the repository at this point in the history
  • Loading branch information
HildarTheDorf committed Feb 1, 2025
1 parent 286a568 commit 677474d
Showing 1 changed file with 11 additions and 6 deletions.
17 changes: 11 additions & 6 deletions extensions/ext/GLSL_EXT_nontemporal_keyword.txt
Original file line number Diff line number Diff line change
Expand Up @@ -106,11 +106,10 @@ Modifications to the OpenGL Shading Language Specification, Version 4.60
to functions whose formal parameters lack such qualifiers. (See
“Function Definitions” for more detail on function calling.) It is legal
to have any additional memory qualifiers on a formal parameter, but only
restrict or nontemporal can be taken away from an opaque-type calling
argument, by a formal parameter that lacks the restrict or nontemporal
qualifier respectively. For non-opaque argument types, where the values
operated on by the called function are copied-in/copied-out,
memory qualifiers are not required to match.
restrict can be taken away from an opaque-type calling argument, by a
formal parameter that lacks the restrict qualifier. For non-opaque
argument types, where the values operated on by the called function are
copied-in/copied-out, memory qualifiers are not required to match.

Modify Section 8.11. Memory Qualifiers

Expand Down Expand Up @@ -148,15 +147,21 @@ Modifications to the OpenGL Shading Language Specification, Version 4.60

NONTEMPORAL

after the line WRITEONLY
after the line "WRITEONLY"

Issues

(1) Should implicit removal of the keyword during function call
be allowed (as-per the `restrict` keyword) or forbidden (as-per
the `volatile` and `coherent` keywords)?

Feedback recieved was that behaving like `restrict` would be more
appropriate.

Revision History

Revision 1
- Initial revision.
Revision 2
- Behaviour of `nontemporal` being passed to a function declared without it
is now an error.

0 comments on commit 677474d

Please sign in to comment.