summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/api_exec.c
Commit message (Collapse)AuthorAgeFilesLines
* dispatch: Code generate api_exec.c.Paul Berry2012-11-061-933/+0
| | | | | | | | | This patch adjusts makefiles to cause src/mesa/main/api_exec.c to be generated using src/mapi/glapi/gen/gl_genexec.py. There should be no functional change. Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* dispatch: Remove a few FEATURE_ES1 conditionals.Paul Berry2012-11-061-2/+0
| | | | | | | | This allows the GLES1.1 dispatch sanity test to be run on all builds, even builds that do not include GLES1 support. Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* mesa: remove unimplemented FramebufferTextureFaceARBJordan Justen2012-11-031-4/+0
| | | | | | | | This function can be re-added with an actual implementation when ARB_geometry_shader4 is supported. Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Paul Berry <[email protected]>
* mesa: remove unimplemented FramebufferTextureARBJordan Justen2012-11-031-1/+0
| | | | | | | | This function can be re-added with an actual implementation when ARB_geometry_shader4 is supported. Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Paul Berry <[email protected]>
* glapi: alias FramebufferTextureARB to FramebufferTextureJordan Justen2012-11-031-1/+1
| | | | | Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Paul Berry <[email protected]>
* mesa api_exec: disable StencilFuncSeparateATI for API_OPENGL_COREJordan Justen2012-11-031-1/+1
| | | | | | | This was mistakenly enabled in a21116f. Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Paul Berry <[email protected]>
* mesa api_exec: add comment regarding GetPointerv & CORE profilesJordan Justen2012-11-031-0/+4
| | | | | | | GetPointerv was de-deprecated in 893ddb. Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Paul Berry <[email protected]>
* dispatch: GLES1 fixes for _mesa_create_exec_table().Paul Berry2012-11-011-75/+180
| | | | | | | | | | | | | | | | | Currently, _mesa_create_exec_table() (in api_exec.c) is used for all APIs except GLES1. In GLES1, _mesa_create_exec_table_es1() (a code generated function) is used instead. In principle, this shouldn't be necessary. It should be possible for api_exec.c to contain the logic for populating the dispatch table for all API's. This patch paves the way for using _mesa_create_exec_table() instead of _mesa_create_exec_table_es1(), by making _mesa_create_exec_table() (and the functions it calls) expose the correct subset of desktop GL functions for GLES1. Reviewed-by: Kenneth Graunke <[email protected]>
* _mesa_create_exec_table: GLES3 fixes.Paul Berry2012-10-231-16/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch sets up the dispatch table for the following GLES3 functions when a GLES3 context is in use: - BeginQuery - BeginTransformFeedback - BindSampler - BindTransformFeedback - BlitFramebuffer - ClearBufferfi - ClearBufferfv - ClearBufferiv - ClearBufferuiv - ClientWaitSync - CopyBufferSubData - DeleteQueries - DeleteSamplers - DeleteSync - DeleteTransformFeedbacks - EndQuery - EndTransformFeedback - FenceSync - FramebufferTextureLayer - GenQueries - GenSamplers - GenTransformFeedbacks - GetInteger64v - GetQueryObjectuiv - GetQueryiv - GetSamplerParameterfv - GetSamplerParameteriv - GetStringi - GetSynciv - GetTransformFeedbackVarying - GetVertexAttribIiv - GetVertexAttribIuiv - IsQuery - IsSampler - IsSync - IsTransformFeedback - PauseTransformFeedback - RenderbufferStorageMultisample - ResumeTransformFeedback - SamplerParameterf - SamplerParameterfv - SamplerParameteri - SamplerParameteriv - TransformFeedbackVaryings - VertexAttribDivisor - VertexAttribIPointer - WaitSync And it avoids setting up the dispatch table for these non-GLES3 functions: - ColorMaski - GetBooleani_v - Enablei - Disablei - IsEnabledi - ClearColorIiEXT - ClearColorIuiEXT - TextureStorage2DEXT - TextureStorage3DEXT - GetActiveUniformName - GetnUniformdv - GetnUniformfv - GetnUniformiv - GetnUniformuiv Reviewed-by: Brian Paul <[email protected]> v2: Make the ctx argument to _mesa_init_transform_feedback_dispatch() a const pointer. Add a comment to remind us to add GetBufferParameteri64v once tests exist for it. Also add VertexAttribDivisor for GLES3, and remove GetActiveUniformName and GetnUniform{dv,fv,iv,uiv} for GLES3. Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* _mesa_create_exec_table(): deprecate ProgramStringARB.Paul Berry2012-10-231-1/+3
| | | | | | | | | This function is only useful for the ARB_{vertex,fragment}_program extensions, which we don't expose in core contexts. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* _mesa_create_exec_table: de-deprecate GetPointerv.Paul Berry2012-10-231-1/+3
| | | | | | | | | | | | | | | | | | | | | | glGetPointerv was de-deprecated in GL 4.3, because GL 4.3 adds functionality from KHR_debug and ARB_debug_output, which require glGetPointerv. This patch modifies _mesa_create_exec_table() to populate glGetPointerv in the dispatch table for core contexts. Technically this is not in compliance with the spec--what we really ought to do for core contexts is expose glGetPointerv only when a GL 4.3 context is in use or one of the two extensions is present. However, it seems silly to go to that extra work, since the only client-visible effect would be for glGetPointerv to raise an INVALID_OPERATION error instead of an INVALID_ENUM error. Besides, the other functions set up by _mesa_create_exec_table() only depend on the API in use, not on the GL version or extensions supported. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* glapi: Alias ClampColor and ClampColorARB.Paul Berry2012-10-231-1/+0
| | | | | | | | | There's no reason to have separate slots in the dispatch table for these two functions, since they are synonymous. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* Finish _HAVE_FULL_GL removalMatt Turner2012-10-171-34/+0
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Remove the NV program API functions.Kenneth Graunke2012-10-161-1/+0
| | | | | | | These are all unused now. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Switch to the other glGetVertexAttribPointervARB implementation.Kenneth Graunke2012-10-161-2/+1
| | | | | | | | | | | | | | | | | Previously, Mesa used nvprogram.c's _mesa_GetVertexAttribPointervNV() function to implement this GL call. There was also a second implementation in varray.c, _mesa_GetVertexAttribPointervARB(), which was entirely unused. The varray.c variant has an additional assertion and checks the index against ctx->Const.VertexProgram.MaxAttribs rather than MAX_VERTEX_GENERIC_ATTRIBS. However, that variable is defined to the same value, so it should be fine. This will allow us to kill the duplicate function. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Remove some shared NV_vp/fp functions from the dispatch table.Kenneth Graunke2012-10-161-9/+0
| | | | | | | | | Also kill the resulting dead code for display list handling. v2: Also kill dlist's OPCODE_REQUEST_RESIDENT_PROGRAMS_NV. Reviewed-by: Brian Paul <[email protected]> [v1] Reviewed-by: Eric Anholt <[email protected]>
* mesa: Unhook NV_fragment_program API from the dispatch table.Kenneth Graunke2012-10-161-16/+0
| | | | | | | | | | | | The NamedParameter functions were introduced in NV_fragment_program, and are not shared with any other extensions. Although this patch appears to remove the LocalParameter functions, it does not: the ARB_fragment_program section also set them up. Now we simply initialize them a single time. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa/es: Enable GL_EXT_map_buffer_rangeFredrik Höglund2012-10-161-4/+3
| | | | | | This extension is functionally the same as GL_ARB_map_buffer_range. Reviewed-by: Ian Romanick <[email protected]>
* mesa: Remove API specific to GL_NV_vertex_program's aliased attribs.Eric Anholt2012-10-151-4/+0
| | | | | | v2: Rebase on top of get.c changes. Reviewed-by: Brian Paul <[email protected]> (v1)
* mesa: Remove support for GL_VERTEX_STATE_PROGRAMs and their execution.Eric Anholt2012-10-151-1/+0
| | | | Reviewed-by: Brian Paul <[email protected]>
* mesa: Remove NV_vertex_program-specific parameters support.Eric Anholt2012-10-151-4/+0
| | | | Reviewed-by: Brian Paul <[email protected]>
* mesa: Remove support for NV_vertex_program's tracked matrices.Eric Anholt2012-10-151-2/+0
| | | | Reviewed-by: Brian Paul <[email protected]>
* mesa: don't enable glVertexPointer() when using API_OPENGLES2.Paul Berry2012-10-041-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | This function is only present in GLES1 and in the OpenGL compatibility profile. Fixes the following "make check" failure: [----------] 1 test from DispatchSanity_test [ RUN ] DispatchSanity_test.GLES2 Mesa warning: couldn't open libtxc_dxtn.so, software DXTn compression/decompression unavailable dispatch_sanity.cpp:122: Failure Value of: table[i] Actual: 0x4de54e Expected: (_glapi_proc) _mesa_generic_nop Which is: 0x41af72 i = 321 [ FAILED ] DispatchSanity_test.GLES2 (4 ms) [----------] 1 test from DispatchSanity_test (4 ms total) NOTE: This is a candidate for stable release branches. Reviewed-by: Oliver McFadden <[email protected]> Tested-by: Oliver McFadden <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* mesa/tests: Sanity check the ES2 dispatch tableIan Romanick2012-09-281-1/+1
| | | | | | | | | | | | | | | | | | | | | This test is only built when shared-glapi is used. Because of changes elsewhere in the tree that were necessary to make shared-glapi work correct with GLX, it's not feasible to make the test function both ways. The list of expected functions originally came from the functions set by api_exec_es2.c. This file no longer exists in Mesa (but api_exec_es1.c is still generated). It was the generated file that configured the dispatch table for ES2 contexts. This test verifies that all of the functions set by the old api_exec_es2.c (with the recent addition of VAO functions) are set in the dispatch table and everything else is a NOP. When adding ES2 (or ES3) extensions that add new functions, this test will need to be modified to expect dispatch functions for the new extension functions. v2: Expect VAO functions be non-NOP. Signed-off-by: Ian Romanick <[email protected]>
* mesa: Don't set uniform dispatch pointers for many things in ES2 or coreIan Romanick2012-09-281-1/+1
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set shaderapi dispatch pointers for many things in ES2 or coreIan Romanick2012-09-281-1/+1
| | | | | | | | | | | | v2: Allow GL_ARB_shader_objects functions in core profile because we still expose the extension string there. Don't allow glBindFragDataLocation in GLES3 because it's not part of that API. Based (mostly) on review comments from Eric Anholt. NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set loopback dispatch pointers for most things in ES2 or coreIan Romanick2012-09-281-1/+1
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointer for glTexStorage in ES2Ian Romanick2012-09-281-4/+6
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointer for glGetProgramivARB in ES2Ian Romanick2012-09-281-1/+1
| | | | | | | | | This function is not the same as glGetProgramiv. NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointer for glResizeBuffersMESA in ES2Ian Romanick2012-09-281-1/+3
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointers for glPointParameter[if][v] in ES2Ian Romanick2012-09-281-4/+8
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointers for glClearDepth or glDepthRange in ES2Ian Romanick2012-09-281-2/+8
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointer for glGetDoublev in ES2Ian Romanick2012-09-281-1/+3
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Don't set dispatch pointer for glPointSize in ES2Ian Romanick2012-09-281-3/+1
| | | | | | | NOTE: This is a candidate for the 9.0 branch Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: remove FEATURE_APPLE_object_purgeable define.Oliver McFadden2012-09-151-2/+0
| | | | | Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: remove FEATURE_EXT_framebuffer_blit define.Oliver McFadden2012-09-151-2/+0
| | | | | Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: remove FEATURE_ARB_sampler_objects define.Oliver McFadden2012-09-151-4/+0
| | | | | Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: remove FEATURE_ARB_map_buffer_range define.Oliver McFadden2012-09-151-2/+0
| | | | | Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: remove FEATURE_ARB_framebuffer_object define.Oliver McFadden2012-09-151-7/+0
| | | | | Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: remove FEATURE_ARB_(fragment|vertex)_program defines.Oliver McFadden2012-09-151-6/+0
| | | | | Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: remove FEATURE_NV_(fragment|vertex)_program defines.Oliver McFadden2012-09-151-6/+0
| | | | | Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: remove FEATURE_OES_EGL_image define.Oliver McFadden2012-09-151-2/+0
| | | | | Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: remove FEATURE_EXT_framebuffer_object define.Oliver McFadden2012-09-151-6/+0
| | | | | Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: remove FEATURE_ARB_shader_objects and related defines.Oliver McFadden2012-09-151-6/+0
| | | | | Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: remove FEATURE_draw_read_buffer define.Oliver McFadden2012-09-151-7/+0
| | | | | Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa/es: Enable GL_OES_vertex_array_objectIan Romanick2012-08-291-10/+6
| | | | | | | Functionally the same as GL_ARB_vertex_array_object. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* mesa: Disallow more deprecated functions in core contextIan Romanick2012-08-291-1/+1
| | | | Signed-off-by: Ian Romanick <[email protected]>
* mesa: Kill ES2 wrapper functionsIan Romanick2012-08-291-105/+201
| | | | | | | | | v2: Fix completely broken condition around ClearColorIiEXT and ClearColorIuiEXT. v3: Add special VertexAttrib handling for ES2. Signed-off-by: Ian Romanick <[email protected]>
* mesa: glGetVertexAttribPointerv is part of core profile and ES2Ian Romanick2012-08-291-1/+1
| | | | Signed-off-by: Ian Romanick <[email protected]>
* mesa: Add skeleton implementations of glInvalidateTex{Sub,}ImageIan Romanick2012-08-141-0/+6
| | | | | | | | | | | | | These are part of GL_ARB_invalidate_subdata (but not OpenGL ES 3.0). v2: Add comment explaining why minimum dimensions are set to 1 for some texture targets. Add default case to switch statement to silence compiler warnings and detect new texture targets. Both changes suggested by Brian. Also use _mesa_is_desktop_gl as suggested by Ken. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>