summaryrefslogtreecommitdiffstats
path: root/src/glsl/ir.h
diff options
context:
space:
mode:
authorFrancisco Jerez <[email protected]>2013-09-25 11:55:06 -0700
committerFrancisco Jerez <[email protected]>2013-10-29 12:40:55 -0700
commit95629223761e076323faab93f72c955e61a38a75 (patch)
tree2642d661efe44ac3a36775248e985c2ddc5a99ed /src/glsl/ir.h
parentcc744a0947e619a4350551f5e9d5e380ac8d9e23 (diff)
glsl: Basic support for built-in intrinsics.
Fix the linker to deal with intrinsic functions which are undefined all the way down to the driver back-end, and introduce intrinsic definition helpers in the built-in generator. We still need to figure out what kind of interface we want for drivers to communicate to the GLSL front-end which of the supported intrinsics should use a default GLSL implementation and which should use a hardware-specific override. As there's no default GLSL implementation for atomic ops, this seems like something we can worry about later on. Reviewed-by: Ian Romanick <[email protected]> v2: Define local helper function to generate ir_call nodes in the builtin generator.
Diffstat (limited to 'src/glsl/ir.h')
-rw-r--r--src/glsl/ir.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/glsl/ir.h b/src/glsl/ir.h
index 85b4d057f5e..49de9e358bd 100644
--- a/src/glsl/ir.h
+++ b/src/glsl/ir.h
@@ -787,6 +787,12 @@ public:
/** Whether or not this function signature is a built-in. */
bool is_builtin() const;
+ /**
+ * Whether or not this function is an intrinsic to be implemented
+ * by the driver.
+ */
+ bool is_intrinsic;
+
/** Whether or not a built-in is available for this shader. */
bool is_builtin_available(const _mesa_glsl_parse_state *state) const;