summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/api_validate.c
Commit message (Collapse)AuthorAgeFilesLines
* mesa: add implementation of glDrawElementsInstancedBaseVertexPierre-Eric Pelloux-Prayer2011-06-021-2/+3
| | | | Signed-off-by: Brian Paul <[email protected]>
* mesa: fix vertex array enable checking in check_valid_to_render()Brian Paul2011-05-191-6/+28
| | | | | | | | | | In particular, this fixes the case where a vertex shader only uses generic vertex attributes (non-0th). Before, we were no-op'ing the glDrawArrays/Elements(). This fixes the new piglit pos-array test. NOTE: This is a candidate for the 7.10 branch.
* mesa: s/primcount/numInstances/Brian Paul2011-01-171-8/+8
| | | | | primcount is also a parameter to glMultiDrawElements(). Use numInstances to avoid confusion between these things.
* mesa: Include mfeatures.h in api_validate.c for FEATURE_* symbols.Vinson Lee2010-11-061-0/+1
|
* Drop GLcontext typedef and use struct gl_context insteadKristian Høgsberg2010-10-131-8/+8
|
* mesa: GL_TRIANGLE_STRIP_ADJACENCY_ARB is the last valid primitiveZack Rusin2010-07-101-5/+5
|
* mesa: Handle FEATURE_es2_glsl differences at runtime tooKristian Høgsberg2010-05-241-12/+22
| | | | | | | Now that we can support different APIs at runtime, we need to check the context for the API we're currently providing as well. https://bugs.freedesktop.org/show_bug.cgi?id=28194
* mesa: new validation functions for GL_ARB_draw_instancedBrian Paul2010-04-041-1/+106
|
* mesa: minor reformatting, new commentsBrian Paul2010-03-051-2/+9
|
* Fix comparison of unsigned value against < 0.Michel Dänzer2010-03-051-1/+1
|
* Revert "mesa: Fix unsigned comparison."Vinson Lee2010-03-041-1/+1
| | | | | | This reverts commit f9504e75f02586a8561733e0e2711c65efa2979d. This patch is incorrect.
* mesa: Fix unsigned comparison.Vinson Lee2010-03-041-1/+1
|
* mesa: Remove unnecessary headers.Vinson Lee2010-01-311-1/+0
|
* mesa: do state validation in _mesa_valid_to_render()Brian Paul2010-01-291-9/+0
| | | | | | | | | ...rather than checking/validating before all the calls to _mesa_valid_to_render() and valid_to_render(). The next patch will actually fix some bugs... (cherry picked from commit 23eda89ec89e2bd5bc26077bd56e8d6b5d4040d4)
* mesa: make max_buffer_index() a non-static functionBrian Paul2009-09-211-0/+45
|
* mesa: Add support for ARB_draw_elements_base_vertex.Eric Anholt2009-09-081-67/+41
|
* mesa: call _mesa_valid_to_render()Brian Paul2009-08-141-4/+2
|
* mesa: minor error string changesBrian Paul2009-08-141-5/+5
|
* mesa: use _mesa_is_bufferobj()Brian Paul2009-08-121-3/+4
|
* Merge branch 'mesa_7_5_branch'Brian Paul2009-06-161-1/+1
|\ | | | | | | | | | | Conflicts: src/mesa/main/api_validate.c
| * mesa: Use integer type with appropriate sign.José Fonseca2009-06-151-2/+2
| |
* | mesa: move gl_array_attrib::_MaxElement to gl_array_object::_MaxElementBrian Paul2009-05-211-4/+4
| | | | | | | | This value is per array object.
* | mesa: issue warning for out of bounds array indexesBrian Paul2009-05-081-0/+2
| |
* | mesa: remove unnecessary buffer size checkBrian Paul2009-05-061-8/+0
| |
* | mesa: code consolidation in glDraw[Range]Elements() validationBrian Paul2009-05-061-26/+22
| |
* | mesa: new comments, minor reformattingBrian Paul2009-05-061-7/+20
| |
* | mesa: use elementBuf local var instead of ctx->Array.ElementArrayBufferObjBrian Paul2009-05-061-1/+1
|/ | | | Makes no real difference, but more consistant.
* mesa: don't draw arrays if vertex position array is not enabledBrian Paul2009-03-021-3/+12
| | | | | | | | For regular GL, we must have vertex positions in order to draw. But ES2 doesn't have that requirement (positions can be computed from any array of data). See bug 19911.
* mesa: check frambuffer complete status before renderingAlan Hourihane2009-01-151-13/+20
|
* Merge branch 'gallium-0.1' into gallium-0.2Keith Whitwell2008-09-111-1/+7
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A first attempt at moving gallium onto a branch directly off master... It will be interesting to see how much work this takes to get running. Have resolved the conflicts semi-arbitarily, not compiled or tested. Conflicts: .gitignore Makefile configs/config.mgw configs/darwin configs/darwin-x86ppc configs/default configs/freebsd-dri configs/linux-dri configs/linux-dri-xcb configs/linux-fbdev configs/linux-static configs/linux-x86-64-static configs/linux-x86-static doxygen/Makefile include/GL/gl.h progs/demos/Makefile progs/demos/descrip.mms progs/demos/texenv.c progs/egl/.gitignore progs/egl/Makefile progs/glsl/.gitignore progs/glsl/Makefile progs/glsl/convolutions.c progs/samples/Makefile.mgw progs/tests/.gitignore progs/trivial/.gitignore progs/trivial/point-param.c progs/trivial/tri.c progs/xdemos/.gitignore progs/xdemos/glthreads.c src/egl/drivers/demo/Makefile src/egl/drivers/dri/Makefile src/egl/main/Makefile src/glu/Makefile src/glu/sgi/Makefile src/glu/sgi/Makefile.mgw src/glut/glx/Makefile.mgw src/glut/os2/WarpWin.cpp src/glut/os2/glut_cindex.cpp src/glut/os2/glut_gamemode.cpp src/glut/os2/glut_win.cpp src/glut/os2/glut_winmisc.cpp src/glut/os2/os2_glx.cpp src/glut/os2/os2_menu.cpp src/glut/os2/os2_winproc.cpp src/glw/Makefile src/glx/x11/dri_glx.c src/glx/x11/glxext.c src/mesa/Makefile src/mesa/Makefile.mgw src/mesa/descrip.mms src/mesa/drivers/beos/Makefile src/mesa/drivers/common/descrip.mms src/mesa/drivers/common/driverfuncs.c src/mesa/drivers/directfb/Makefile src/mesa/drivers/dri/Makefile.template src/mesa/drivers/dri/common/dri_bufmgr.c src/mesa/drivers/dri/common/dri_bufmgr.h src/mesa/drivers/dri/common/dri_util.c src/mesa/drivers/dri/common/extension_helper.h src/mesa/drivers/dri/common/mmio.h src/mesa/drivers/dri/common/utils.c src/mesa/drivers/dri/common/utils.h src/mesa/drivers/dri/glcore/Makefile src/mesa/drivers/dri/i810/i810screen.c src/mesa/drivers/dri/i915/intel_ioctl.c src/mesa/drivers/dri/i915/intel_ioctl.h src/mesa/drivers/dri/i915/intel_screen.c src/mesa/drivers/dri/i915/server/i830_common.h src/mesa/drivers/dri/i915/server/i830_dri.h src/mesa/drivers/dri/i965/intel_screen.c src/mesa/drivers/dri/i965/server/i830_common.h src/mesa/drivers/dri/i965/server/i830_dri.h src/mesa/drivers/dri/mach64/mach64_screen.c src/mesa/drivers/dri/nouveau/nouveau_context.h src/mesa/drivers/dri/nouveau/nouveau_fifo.c src/mesa/drivers/dri/nouveau/nouveau_fifo.h src/mesa/drivers/dri/nouveau/nouveau_screen.c src/mesa/drivers/dri/nouveau/nouveau_screen.h src/mesa/drivers/dri/r128/r128_tex.h src/mesa/drivers/dri/savage/savageioctl.h src/mesa/drivers/fbdev/Makefile src/mesa/drivers/osmesa/Makefile src/mesa/drivers/osmesa/descrip.mms src/mesa/drivers/x11/Makefile src/mesa/drivers/x11/descrip.mms src/mesa/drivers/x11/xm_dd.c src/mesa/glapi/glapi.c src/mesa/glapi/glthread.c src/mesa/main/api_validate.c src/mesa/main/attrib.c src/mesa/main/bufferobj.c src/mesa/main/bufferobj.h src/mesa/main/buffers.c src/mesa/main/config.h src/mesa/main/context.c src/mesa/main/descrip.mms src/mesa/main/drawpix.c src/mesa/main/enums.c src/mesa/main/fbobject.c src/mesa/main/glheader.h src/mesa/main/imports.c src/mesa/main/mipmap.c src/mesa/main/mm.c src/mesa/main/mm.h src/mesa/main/mtypes.h src/mesa/main/points.c src/mesa/main/sources src/mesa/main/state.c src/mesa/main/texcompress_fxt1.c src/mesa/main/texenvprogram.c src/mesa/main/texobj.c src/mesa/main/texstate.c src/mesa/main/texstore.c src/mesa/math/descrip.mms src/mesa/shader/arbprogram.c src/mesa/shader/descrip.mms src/mesa/shader/prog_execute.c src/mesa/shader/prog_statevars.c src/mesa/shader/prog_statevars.h src/mesa/shader/prog_uniform.c src/mesa/shader/program.c src/mesa/shader/program.h src/mesa/shader/shader_api.c src/mesa/shader/slang/descrip.mms src/mesa/shader/slang/library/slang_vertex_builtin_gc.h src/mesa/sources src/mesa/swrast/descrip.mms src/mesa/swrast/s_drawpix.c src/mesa/swrast/s_fragprog.c src/mesa/swrast/s_readpix.c src/mesa/swrast/s_span.c src/mesa/swrast_setup/descrip.mms src/mesa/tnl/descrip.mms src/mesa/tnl/t_context.h src/mesa/tnl/t_vp_build.c src/mesa/tnl/tnl.h src/mesa/vbo/descrip.mms src/mesa/vbo/vbo_context.c src/mesa/vbo/vbo_exec_array.c src/mesa/x86-64/xform4.S src/mesa/x86/rtasm/x86sse.c src/mesa/x86/rtasm/x86sse.h windows/VC6/progs/glut/glut.dsp windows/VC7/mesa/gdi/gdi.vcproj windows/VC7/mesa/glu/glu.vcproj windows/VC7/mesa/mesa.sln windows/VC7/mesa/mesa/mesa.vcproj windows/VC7/mesa/osmesa/osmesa.vcproj windows/VC7/progs/glut/glut.vcproj windows/VC8/mesa/gdi/gdi.vcproj windows/VC8/mesa/glu/glu.vcproj windows/VC8/mesa/mesa.sln windows/VC8/mesa/mesa/mesa.vcproj windows/VC8/progs/glut/glut.vcproj
| * mesa: fix vertex array validation test for attribute 0 (vert pos)Brian Paul2008-07-021-8/+12
| | | | | | | | | | | | | | We don't actually need vertex array[0] enabled when using a vertex program/shader. cherry-picked from master
| * mesa: Apply MSVC portability fixes from Alan Hourihane.José Fonseca2008-05-311-1/+1
| |
| * don't map element buffer in _mesa_validate_DrawElements() unless necessaryBrian2007-08-201-12/+19
| |
* | mesa: fix vertex array validation test for attribute 0 (vert pos)Brian Paul2008-07-021-11/+12
| | | | | | | | | | We don't actually need vertex array[0] enabled when using a vertex program/shader.
* | check for count==0 in _mesa_validate_DrawArrays()Brian2007-10-311-2/+3
| |
* | fix DrawRangeElements error msgBrian2007-09-231-1/+1
| |
* | refactor bounds checking codeBrian2007-08-201-67/+81
| |
* | don't map buffer in _mesa_validate_DrawElements() unless neededBrian2007-08-201-32/+19
| |
* | Fix an error in _mesa_validate_DrawElementsXiang, Haihao2007-07-301-7/+27
|/ | | | | The field 'Data' in an obj is NULL in some dri drivers(such as i965). Use mapped pointer instead.
* Check if 'indices' parameter is NULL (bug 11314)Brian2007-07-081-2/+17
|
* Add support for GL_APPLE_vertex_array_object. Several test programsIan Romanick2006-06-121-5/+5
| | | | | | | and demos are also added. Adding basic support to drivers should be as easy as just enabling the extension, though thorough test would also be required.
* Added ctx->Vertex/FragmentProgram._Enable flags. Set when vertex/fragmentBrian Paul2004-04-231-4/+3
| | | | | | | program is enabled AND the currently bound program is valid. Check _Enable instead of Enable to prevent things from blowing up when someone calls glEnable(GL_VERTEX_PROGRAM_ARB) without actually defining a program.
* glDrawArrays loop was wrongBrian Paul2004-02-241-2/+1
|
* Fix some problems with glDrawElements and vertex buffer objects.Brian Paul2003-12-041-0/+37
|
* casts for g++Brian Paul2003-11-251-1/+1
|
* Redo array element checking for vertex array buffers.Brian Paul2003-11-101-88/+76
| | | | | | | Now, compute ctx->Array._MaxElement as the min of enabled array's max element. Test against ctx->Array._MaxElement in glDrawArrays/Elements. Note: testing in glArrayElement not done yet. Only do element checking if ctx->Const.CheckArrayBounds is set.
* Initial work for bounds checking of vertex arrays and vertex buffer objects.Brian Paul2003-10-221-5/+80
| | | | | | Only glDrawArrays() done so far. Simplified glVertex/Color/etcPointer functions. Misc casts added here and there.
* Removed all RCS / CVS tags (Id, Header, Date, etc.) from everything.Ian Romanick2003-06-051-0/+1
|
* remove unneeded unsigned int / zero comparisonsBrian Paul2003-04-211-8/+5
|
* Header file clean-up:Brian Paul2002-10-241-1/+2
| | | | | | | | 1. Remove all.h and PC_HEADER junk. 2. Rolled mem.c and mem.h into imports.c and imports.h 3. Include imports.h instead of mem.h Restore _mesa_create/initialize_context() to be like they were in 4.0.4 New wrappers for a few std C functions: _mesa_atoi(), _mesa_strstr(), etc.