<function name="MemoryObjectParameterivEXT" es2="3.2">
<param name="memoryObject" type="GLuint"/>
<param name="pname" type="GLenum"/>
- <param name="params" type="const GLint *"/>
+ <param name="params" type="const GLint *" count="_mesa_memobj_enum_to_count(pname)"/>
</function>
<function name="GetMemoryObjectParameterivEXT" es2="3.2">
<function name="SemaphoreParameterui64vEXT" es2="3.2">
<param name="semaphore" type="GLuint"/>
<param name="pname" type="GLenum"/>
- <param name="params" type="const GLuint64 *"/>
+ <param name="params" type="const GLuint64 *" count="_mesa_semaphore_enum_to_count(pname)"/>
</function>
<function name="GetSemaphoreParameterui64vEXT" es2="3.2">
}
}
+static inline unsigned
+_mesa_memobj_enum_to_count(GLenum pname)
+{
+ switch (pname) {
+ case GL_DEDICATED_MEMORY_OBJECT_EXT:
+ return 1;
+ default:
+ return 0;
+ }
+}
+
+static inline unsigned
+_mesa_semaphore_enum_to_count(GLenum pname)
+{
+ switch (pname) {
+ /* EXT_semaphore and EXT_semaphore_fd define no parameters */
+ default:
+ return 0;
+ }
+}
+
#endif /* MARSHAL_H */