summaryrefslogtreecommitdiff
path: root/src/mesa/main/context.c
AgeCommit message (Collapse)Author
2010-02-19Replace _mesa_malloc, _mesa_calloc and _mesa_free with plain libc versionsKristian Høgsberg
2010-02-19mesa: replace old MEMCPY macro with memcpyBrian Paul
2010-02-11mesa: additional constant/limit assertionsBrian Paul
2010-02-09mesa: move all limit/constant assertions into check_context_limits()Brian Paul
2010-02-09mesa: Enable true refcounting for NullBufferObj.Michal Krol
This object can be shared with another context, so we cannot just delete it when the owning context is being destroyed. Ensuring that buffer objects are properly refcounted guarantees NullBufferObj is destroyed when all references to it are removed.
2010-02-09mesa: Always do proper ref counting of shared state.José Fonseca
2010-02-03mesa: increase number of texture units to MAX_COMBINED_TEXTURE_IMAGE_UNITSBrian Paul
We were misinterpretting GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS previously. It's the number of texture units for which we need to keep state; not just the total number of texture units addressable by the vertex shader plus fragment shader. Since sw Mesa independently supports 16 texture units in vertex shaders and 16 texture units in fragment shaders, the max combined units is 32. Note that the docs for glActiveTexture() indicate the max legal unit is MAX(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, MAX_TEXTURE_COORDS) - 1. A new piglit test (texunits.c) tests the various texture unit limits. I'm pretty sure I've got this all right now, but additional reviews are welcome...
2010-02-01mesa: Remove unnecessary headers.Vinson Lee
2010-01-31mesa: Remove unnecessary headers.Vinson Lee
2010-01-29mesa: do state validation in _mesa_valid_to_render()Brian Paul
...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)
2010-01-22glapi: clean-up and simplify glapi_nop.c codeBrian Paul
Removed _glapi_noop_enable_warnings() and _glapi_set_warning_func(). Just check the DEBUG env vars and call fprintf(stderr) with a warning message instead.
2010-01-05mesa: call _mesa_compute_version() to set context's version infoBrian Paul
2009-12-11Merge branch 'mesa_7_7_branch'Brian Paul
Conflicts: src/gallium/state_trackers/xorg/xorg_xv.c src/mesa/drivers/dri/intel/intel_span.c
2009-12-09mesa: Move OES_read_format support from drivers into the core.Eric Anholt
The assertion is that the correct read type to be using is the native type of the underlying read renderbuffer. For some fallback paths, this may be worse than GL_RGBA/GL_UNSIGNED_BYTE for reads today, but it gets all drivers the expected GL_BGRA/GL_UNSIGNED_BYTE for ARGB8888 or GL_BGR//GL_UNSIGNED_SHORT_5_6_5_REV for rgb565 with no work. This fixes the intel (and other) DRI drivers to report read formats that should hit blit PBO readpixels paths.
2009-12-01mesa: Update vertex texture code after gallium changes.Michal Krol
2009-11-17Merge branch 'outputswritten64'Ian Romanick
Add a GLbitfield64 type and several macros to operate on 64-bit fields. The OutputsWritten field of gl_program is changed to use that type. This results in a fair amount of fallout in drivers that use programs. No changes are strictly necessary at this point as all bits used are below the 32-bit boundary. Fairly soon several bits will be added for clip distances written by a vertex shader. This will cause several bits used for varyings to be pushed above the 32-bit boundary. This will affect any drivers that support GLSL. At this point, only the i965 driver has been modified to support this eventuality. I did this as a "squash" merge. There were several places through the outputswritten64 branch where things were broken. I foresee this causing difficulties later for bisecting. The history is still available in the branch. Conflicts: src/mesa/drivers/dri/i965/brw_wm.h
2009-10-29mesa/main: Make FEATURE_texture_s3tc follow feature conventions.Chia-I Wu
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-10-29mesa/main: Make FEATURE_texture_fxt1 follow feature conventions.Chia-I Wu
Also remove the unused initialization and GLchan fetch functions. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-10-23glapi: Always build libglapi.a.Chia-I Wu
This is made possible by making glapioffsets.h and glapidispatch.h internal headers of glapi. They should only be included indirectly through dispatch.h by mesa. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-10-23mesa: Enable remap table in core.Chia-I Wu
This enables the remap table in core. driInitExtensions is adapted to use the remap table. All uses of extension_helper.h are replaced by remap_helper.h. The chicken-egg problem of the DRI drivers is also solved. It is now also possible to pass NULL extensions to driInitExtensions. It will cause driInitExtensions to map all known functions. This functionality is used by software drivers and EGL_i915. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-10-22Merge branch 'mesa_7_6_branch'Brian Paul
2009-10-22mesa: code refactoring- new _mesa_finish(), _mesa_flush()Brian Paul
2009-10-14mesa: added VERBOSE_SWAPBUFFERSBrian Paul
2009-10-08mesa: free display list state after freeing shared stateBrian Paul
Fixes bug 24402.
2009-10-07mesa: added _mesa_free_display_list_data()Brian Paul
2009-10-05Merge branch 'mesa_7_6_branch'Brian Paul
Conflicts: src/gallium/auxiliary/util/u_cpu_detect.c
2009-10-01mesa: add missing return when out of memoryBrian Paul
2009-09-30mesa/main: Make FEATURE_dlist follow feature conventions.Chia-I Wu
As shown in mfeatures.h, this allows users of dlist.h to work without knowing if the feature is available.
2009-09-30mesa/main: Make FEATURE_evaluators follow feature conventions.Chia-I Wu
As shown in mfeatures.h, this allows users of eval.h to work without knowing if the feature is available.
2009-09-30mesa/main: New feature FEATURE_queryobj.Chia-I Wu
It merges FEATURE_ARB_occlusion_query and FEATURE_EXT_timer_query, and follows the feature conventions.
2009-09-30mesa/main: Make FEATURE_feedback follow feature conventions.Chia-I Wu
As shown in mfeatures.h, this allows users of feedback.h to work without knowing if the feature is available.
2009-09-30mesa/main: New feature FEATURE_rastpos.Chia-I Wu
It is separated from FEATURE_drawpix and made to follow the feature conventions.
2009-09-30mesa/main: Make FEATURE_histogram follow feature conventions.Chia-I Wu
As shown in mfeatures.h, this allows users of histogram.h to work without knowing if the feature is available.
2009-09-30mesa/main: Make FEATURE_attrib_stack follow feature conventions.Chia-I Wu
As shown in mfeatures.h, this allows users of attrib.h to work without knowing if the feature is available.
2009-09-30mesa/main: Make FEATURE_accum follow feature conventions.Chia-I Wu
As shown in mfeatures.h, this allows users of accum.h to work without knowing if the feature is available.
2009-09-24mesa/main: Make FEATURE_colortable follow feature conventions.Chia-I Wu
As shown in mfeatures.h, this allows users of colortab.h to work without knowing if the feature is available.
2009-09-20Revert "mesa: move _mesa_meta_init/free() calls to core Mesa"Brian Paul
This reverts commit 651cffd626a82d9bf539437ca4bdf8ea4b396fab. The commit inadvertantly introduced a new gallium dependency on the meta code.
2009-09-19mesa: move _mesa_meta_init/free() calls to core MesaBrian Paul
2009-09-03ARB sync: Add support for GL_ARB_sync to swrastIan Romanick
This isn't quite right yet. The delete behavior and the context clean-up needs some work.
2009-08-26ARB prog: Change handling of program parameter limitsIan Romanick
Several changes are made to program parameter limits. Several of the non-NATIVE limits are set higher. All of the NATIVE limits are set to zero in the core Mesa code. Each driver must set the actual value in its context creation routine. If the NATIVE value remains zero, this indicates that hardware shaders may not be supported. Each of the preceeding changes matches the bahavior of Apple's shader assembler, so it seems safe. Finally, we limit the value of MaxEnvParams to be no greater than MaxNativeAttribs. At least one case has been found where an application does the wrong thing if MaxNativeAttribs < MaxEnvParams. See also bugzilla #23490.
2009-08-25mesa: validate shader before drawing (for debugging, disabled)Brian Paul
2009-08-14mesa: append uniform values to the log file the first time we use a shaderBrian Paul
This info is essential to using/debugging a shader outside of its normal application.
2009-08-14mesa: new _mesa_valid_to_render() functionBrian Paul
Tests if the current shader/program is valid and that the framebuffer is complete. To be called by glBegin, glDrawArrays, etc.
2009-06-26Merge branch 'arb_vertex_array_object'Brian Paul
2009-06-19mesa: move vertex array objects from shared state to per-contextBrian Paul
The ARB version requires VAOs to be per-context while the Apple extension was ambiguous.
2009-06-19Merge branch 'ext-provoking-vertex'Brian Paul
Conflicts: docs/relnotes-7.6.html progs/tests/Makefile src/gallium/drivers/softpipe/sp_prim_vbuf.c src/glx/x11/indirect.c src/mesa/glapi/Makefile src/mesa/glapi/dispatch.h src/mesa/glapi/glapioffsets.h src/mesa/glapi/glapitable.h src/mesa/glapi/glapitemp.h src/mesa/glapi/glprocs.h src/mesa/main/dlist.c src/mesa/main/enums.c src/mesa/sparc/glapi_sparc.S src/mesa/x86-64/glapi_x86-64.S src/mesa/x86/glapi_x86.S
2009-06-24Merge branch 'mesa_7_5_branch'Brian Paul
Conflicts: src/mesa/drivers/dri/i915/i915_tex_layout.c src/mesa/drivers/dri/i965/brw_wm_glsl.c src/mesa/drivers/dri/intel/intel_buffer_objects.c src/mesa/drivers/dri/intel/intel_pixel_bitmap.c src/mesa/drivers/dri/intel/intel_pixel_draw.c src/mesa/main/enums.c src/mesa/main/texstate.c src/mesa/vbo/vbo_exec_array.c
2009-06-17mesa: rework viewport/scissor initialization codeBrian Paul
The first time a context is bound to a drawable, the viewport and scissor bounds are initialized to the buffer's size. This is actually a bit tricky. A new _mesa_check_init_viewport() function is called in several places to check if the viewport has been initialized. We also use a new ctx->ViewportInitialized flag instead of the overloaded ctx->FirstTimeCurrent flag.
2009-06-04Merge branch 'mesa_7_5_branch'Brian Paul
Conflicts: src/mesa/main/context.c
2009-06-02mesa: release VBO and PBO references upon context destructionBrian Paul