-
Notifications
You must be signed in to change notification settings - Fork 22
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
Add support for extensions and experimental Vulkan support #247
base: master
Are you sure you want to change the base?
Conversation
…s requiring values
… layout qualifiers for uniforms, a bit of cleanup
@cbaggers my PR in glsl-spec introduces new types, for which this PR adds type mappings in parse-from-spec. |
@cbaggers I've added support for the void main() {
rayQueryEXT q;
rayQueryInitializeEXT(q, ...);
...
} I.e. they have to be declared first and then initialized by calling the ( (let (((q :ray-query-ext)))
(ray-query-initialize-ext q ...)) Let me know, if you would prefer a different solution. |
Hey, I've added support for extensions and experimental support for Vulkan/SPIR-V.
For both I've changed the semantics of the
context
arg inmake-stage
(nowhere else), which now also allows lists to specify the target environment and enabled/disabled extensions. (See changes to docs/using-the-compiler)I did it there because I didn't want the API to change for these features and from the name of the arg it seemed to make sense.
I probably missed many spots where I could have added more validation for allowed qualifiers and types, but it should at least add everything new required for #220 (except for what needs to be added in glsl-spec).
Feel free to request any changes.
I'm still pretty new to CL (this is basically part of my first project), so also feel free to point out any dumb mistakes I made ;)