[1/3] glapi: Support for INTEL_performance_query.

Submitted by Petri Latvala on March 12, 2014, 12:53 p.m.

Details

Message ID 1394628833-6536-2-git-send-email-petri.latvala@intel.com
State New
Headers show

Not browsing as part of any series.

Commit Message

Petri Latvala March 12, 2014, 12:53 p.m.
Signed-off-by: Petri Latvala <petri.latvala@intel.com>
---
 glapi/enum.spec |  22 ++++++++++
 glapi/gl.spec   | 132 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 153 insertions(+), 1 deletion(-)

Patch hide | download patch | download mbox

diff --git a/glapi/enum.spec b/glapi/enum.spec
index c854b91..e0ac933 100644
--- a/glapi/enum.spec
+++ b/glapi/enum.spec
@@ -4069,6 +4069,28 @@  INTEL_parallel_arrays enum:
 
 # INTEL_future_use: 0x83F9-0x83FE
 
+INTEL_performance_query enum:
+	PERFQUERY_SINGLE_CONTEXT_INTEL			= 0x0000
+	PERFQUERY_GLOBAL_CONTEXT_INTEL			= 0x0001
+	PERFQUERY_WAIT_INTEL				= 0x83FB
+	PERFQUERY_FLUSH_INTEL				= 0x83FA
+	PERFQUERY_DONOT_FLUSH_INTEL			= 0x83F9
+	PERFQUERY_COUNTER_EVENT_INTEL			= 0x94F0
+	PERFQUERY_COUNTER_DURATION_NORM_INTEL		= 0x94F1
+	PERFQUERY_COUNTER_DURATION_RAW_INTEL		= 0x94F2
+	PERFQUERY_COUNTER_THROUGHPUT_INTEL		= 0x94F3
+	PERFQUERY_COUNTER_RAW_INTEL			= 0x94F4
+	PERFQUERY_COUNTER_TIMESTAMP_INTEL		= 0x94F5
+	PERFQUERY_COUNTER_DATA_UINT32_INTEL		= 0x94F8
+	PERFQUERY_COUNTER_DATA_UINT64_INTEL		= 0x94F9
+	PERFQUERY_COUNTER_DATA_FLOAT_INTEL		= 0x94FA
+	PERFQUERY_COUNTER_DATA_DOUBLE_INTEL		= 0x94FB
+	PERFQUERY_COUNTER_DATA_BOOL32_INTEL		= 0x94FC
+	PERFQUERY_QUERY_NAME_LENGTH_MAX_INTEL		= 0x94FD
+	PERFQUERY_COUNTER_NAME_LENGTH_MAX_INTEL		= 0x94FE
+	PERFQUERY_COUNTER_DESC_LENGTH_MAX_INTEL		= 0x94FF
+	PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL		= 0x9500
+
 INTEL_map_texture enum:
 	TEXTURE_MEMORY_LAYOUT_INTEL			= 0x83FF
 
diff --git a/glapi/gl.spec b/glapi/gl.spec
index a8fcc44..94ed368 100644
--- a/glapi/gl.spec
+++ b/glapi/gl.spec
@@ -34,7 +34,7 @@  category: GREMEDY_frame_terminator GREMEDY_string_marker
 category: HP_image_transform
 category: IBM_multimode_draw_arrays IBM_static_data IBM_vertex_array_lists
 category: INGR_blend_func_separate
-category: INTEL_parallel_arrays INTEL_map_texture
+category: INTEL_parallel_arrays INTEL_performance_query INTEL_map_texture
 category: KHR_debug
 category: MESAX_texture_stack MESA_resize_buffers MESA_window_pos
 category: NV_bindless_texture NV_conditional_render NV_copy_image NV_depth_buffer_float NV_evaluators NV_explicit_multisample NV_fence NV_float_buffer NV_fragment_program NV_fragment_program NV_framebuffer_multisample_coverage NV_geometry_program4 NV_gpu_program4 NV_gpu_program5 NV_gpu_shader5 NV_half_float NV_half_float NV_occlusion_query NV_parameter_buffer_object NV_parameter_buffer_object2 NV_path_rendering NV_pixel_data_range NV_pixel_data_range NV_point_sprite NV_present_video NV_primitive_restart NV_primitive_restart NV_register_combiners NV_register_combiners2 NV_shader_buffer_load NV_texture_barrier NV_texture_expand_normal NV_texture_expand_normal NV_texture_multisample NV_transform_feedback NV_transform_feedback2 NV_vdpau_interop NV_vdpau_interop NV_vertex_array_range NV_vertex_attrib_integer_64bit NV_vertex_buffer_unified_memory NV_vertex_program NV_vertex_program1_1_dcc NV_vertex_program2 NV_vertex_program4 NV_video_capture NV_draw_texture
@@ -35891,6 +35891,136 @@  DrawTextureNV(texture, sampler, x0, y0, x1, y1, z, s0, t0, s1, t1)
 
 ###############################################################################
 #
+# Extension #443
+# INTEL_performance_query commands
+#
+###############################################################################
+
+GetFirstPerfQueryIdINTEL(queryId)
+	return		void
+	param		queryId		UInt32 out array [1]
+	category	INTEL_performance_query
+	version		3.0
+	extension
+	glxropcode	?
+	glxflags	ignore
+	offset		?
+
+GetNextPerfQueryIdINTEL(queryId, nextQueryId)
+	return		void
+	param		queryId		UInt32 in value
+	param		nextQueryId	UInt32 out array [1]
+	category	INTEL_performance_query
+	version		3.0
+	extension
+	glxropcode	?
+	glxflags	ignore
+	offset		?
+
+GetPerfQueryIdByNameINTEL(queryName, queryId)
+	return		void
+	param		queryName	Char in array
+	param		queryId		UInt32 out array [1]
+	category	INTEL_performance_query
+	version		3.0
+	extension
+	glxropcode	?
+	glxflags	ignore
+	offset		?
+
+GetPerfQueryInfoINTEL(queryId, queryNameLength, queryName, dataSize, noCounters, noInstances, capsMask)
+	return		void
+	param		queryId		UInt32 in value
+	param		queryNameLength	UInt32 in value
+	param		queryName	Char out array [queryNameLength]
+	param		dataSize	UInt32 out array [1]
+	param		noCounters	UInt32 out array [1]
+	param		noInstances	UInt32 out array [1]
+	param		capsMask	UInt32 out array [1]
+	category	INTEL_performance_query
+	version		3.0
+	extension
+	glxropcode	?
+	glxflags	ignore
+	offset		?
+
+GetPerfCounterInfoINTEL(queryId, counterId, counterNameLength, counterName, counterDescLength, counterDesc, counterOffset, counterDataSize, counterTypeEnum, counterDataTypeEnum, rawCounterMaxValue)
+	return		void
+	param		queryId		UInt32 in value
+	param		counterId	UInt32 in value
+	param		counterNameLength	UInt32 in value
+	param		counterName	Char out array [counterNameLength]
+	param		counterDescLength	UInt32 in value
+	param		counterDesc	Char out array [counterDescLength]
+	param		counterOffset	UInt32 out array [1]
+	param		counterDataSize	UInt32 out array [1]
+	param		counterTypeEnum	UInt32 out array [1]
+	param		counterDataTypeEnum	UInt32 out array [1]
+	param		rawCounterMaxValue	UInt64 out array [1]
+	category	INTEL_performance_query
+	version		3.0
+	extension
+	glxropcode	?
+	glxflags	ignore
+	offset		?
+
+CreatePerfQueryINTEL(queryId, queryHandle)
+	return		void
+	param		queryId		UInt32 in value
+	param		queryHandle	UInt32 out array [1]
+	category	INTEL_performance_query
+	version		3.0
+	extension
+	glxropcode	?
+	glxflags	ignore
+	offset		?
+
+DeletePerfQueryINTEL(queryHandle)
+	return		void
+	param		queryHandle	UInt32 in value
+	category	INTEL_performance_query
+	version		3.0
+	extension
+	glxropcode	?
+	glxflags	ignore
+	offset		?
+
+BeginPerfQueryINTEL(queryHandle)
+	return		void
+	param		queryHandle	UInt32 in value
+	category	INTEL_performance_query
+	version		3.0
+	extension
+	glxropcode	?
+	glxflags	ignore
+	offset		?
+
+EndPerfQueryINTEL(queryHandle)
+	return		void
+	param		queryHandle	UInt32 in value
+	category	INTEL_performance_query
+	version		3.0
+	extension
+	glxropcode	?
+	glxflags	ignore
+	offset		?
+
+GetPerfQueryDataINTEL(queryHandle, flags, dataSize, data, bytesWritten)
+	return		void
+	param		queryHandle	UInt32 in value
+	param		flags		UInt32 in value
+	param		dataSize	SizeI in value
+	param		data		Void out array [dataSize]
+	param		bytesWritten	UInt32 out array [1]
+	category	INTEL_performance_query
+	version		3.0
+	extension
+	glxropcode	?
+	glxflags	ignore
+	offset		?
+
+###############################################################################
+#
 # ARB_buffer_storage commands
 #
 ###############################################################################