summaryrefslogtreecommitdiffstats
path: root/src/mesa/main
Commit message (Collapse)AuthorAgeFilesLines
* Add Solaris to OS'es using PROT_EXEC mmap() to get executable heap spaceAlan Coopersmith2009-03-061-1/+1
| | | | Signed-off-by: Alan Coopersmith <[email protected]>
* mesa: added _mesa_read_shader() function to read shaders from filesBrian Paul2009-03-061-0/+51
| | | | Useful for debugging to override an application's shader.
* mesa: Reads must also be done with lock held.José Fonseca2009-03-061-3/+5
| | | | Otherwise two threads might think each made the refcount go zero.
* mesa: Fix typo.José Fonseca2009-03-061-1/+1
| | | | Windows threads block if one over-unlocks them.
* mesa: call _mesa_get_cpu_features() during one-time-initBrian Paul2009-03-041-0/+3
|
* mesa: new cpuinfo.c file to init/query cpu info and extensionsBrian Paul2009-03-042-0/+156
|
* mesa: Follow ARB_map_buffer_range more stricly.José Fonseca2009-03-041-0/+2
| | | | | Namelly, FlushMappedBufferRange takes a subrange relative to the original range.
* mesa: fix sw fallback state validation bugBrian Paul2009-03-031-10/+28
| | | | | | | | When a hw driver fell back to swrast, swrast wasn't always getting informed of program changes. When fixed function is translated into shaders, flags like _NEW_LIGHT, _NEW_TEXTURE, etc. should really signal _NEW_PROGRAM. In this case, swrast wasn't seeing _NEW_PROGRAM when new fragment shaders were generated.
* Merge commit 'origin/gallium-0.1'Keith Whitwell2009-03-032-3/+38
|\ | | | | | | | | | | | | | | | | | | Conflicts: scons/gallium.py src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c src/gallium/include/pipe/p_defines.h src/mesa/vbo/vbo_exec_api.c src/mesa/vbo/vbo_exec_draw.c
| * mesa: add MapBufferRange driver callbacksKeith Whitwell2009-03-031-0/+26
| | | | | | | | | | | | Will be needed in coming GL extensions (GL_map_buffer_range, GL 3.0). Will be used by the vbo module to avoid reallocating vbo's at each draw primitive call.
| * mesa: Add BeginVertices driver callKeith Whitwell2009-03-032-3/+12
| | | | | | | | | | Provides notification to the VBO modules prior to the first immediate call. Pairs with FlushVertices()
| * mesa: Add _mesa_snprintf.José Fonseca2009-01-072-0/+15
| | | | | | | | On Windows snprintf is renamed as _snprintf.
| * add GL_READ_FRAMEBUFFER_BINDING_EXT case, regenerate get.c fileBrian Paul2009-01-062-0/+17
| | | | | | | | | | | | | | | | (cherry picked from commit 816fbeaa813e5cdca314a39677c74c8dc700d35a) Conflicts: src/mesa/main/get.c
| * mesa: fix GL_DEPTH_CLEAR_VALUE castingBrian Paul2009-01-062-4/+4
| |
| * mesa: fix cast/conversion for optional codeBrian2009-01-062-4/+6
| | | | | | | | (cherry picked from commit 1e3a44fab068f00378613456036716d0c3772969)
| * mesa: fix float->int mapping for glGetIntegerv(GL_DEPTH_CLEAR_VALUE)Brian Paul2009-01-062-3/+3
| | | | | | | | | | | | | | | | (cherry picked from commit 8124faf89d638285d8e9aa93adc3ca7f4ee729f3) Conflicts: src/mesa/main/get.c
| * mesa: Use explicit casts when precision is lost.José Fonseca2009-01-061-2/+2
| | | | | | | | Silences MSVC.
| * mesa: fix conditional in save_Lightfv(), bug 18838Brian2009-01-061-1/+1
| | | | | | | | (cherry picked from commit 1e2f57425153d73646fde7c91c16aa5559491556)
| * mesa: add gl_program::Input/OutputFlags[] arrayBrian Paul2009-01-062-0/+5
| | | | | | | | | | | | | | These arrays will indicate per-input or per-output options for vertex/fragment programs such as centroid-sampling and invariance. (cherry picked from commit b730d0d3e9b202b17a0815cb820fc9905f35cb98)
| * mesa: Pass the context to query object delete cb to avoid null dereference.Eric Anholt2008-12-181-1/+1
| |
| * mesa: choose GLSL vertex shader over ARB/internal vertex program in ↵Brian Paul2008-12-171-1/+13
| | | | | | | | | | | | | | | | | | | | | | get_fp_input_mask() This is a work-around the for the fact that we do fragment shader state validation before vertex shader validation (see comments in state.c) so in get_fp_input_mask() we can't rely on ctx->VertexProgram._Current being up to date yet. This fixes a glean glsl1 test failure.
| * mesa: fix fixed-function test in get_fp_input_mask() - again.Brian Paul2008-12-171-3/+5
| | | | | | | | | | | | The problem we're solving only occured when there was a user-defined vertex shader but no fragment shader. Check for that case now. Fixes glean api2 vertex array failure.
| * mesa: add missing cases for texture array targetsBrian Paul2008-12-171-6/+10
| |
| * Revert "mesa: fix vertex program test in get_fp_input_mask()"Brian Paul2008-12-171-1/+3
| | | | | | | | This reverts commit cdaaf8e107010624bed4abdf9553c0ef63c8b708.
| * mesa: fix vertex program test in get_fp_input_mask()Brian Paul2008-12-171-3/+1
| | | | | | | | | | We were accidentally using the fixed-function logic when a vertex shader was being used.
| * mesa: restore the negate flag of dots in build_lighting.Xiang, Haihao2008-11-111-0/+3
| | | | | | | | | | Dots is re-used if more than one light is enabled. Previously the negate flag of dots may affect next light.
| * mesa: use _bfc0 instead of _col0 when building back face lighting.Brian Paul2008-11-071-3/+2
| | | | | | | | cherry-picked from master: 4550b0562d5b59890fccb0e7eb0dbef967d1ccf9
* | mesa: more tex image debug/dumping codeBrian Paul2009-03-021-0/+22
| |
* | mesa: move call to update_texture_compare_function()Brian Paul2009-03-021-3/+1
| | | | | | | | Another conditional can be avoided.
* | mesa: fix texture enable regressionBrian Paul2009-03-021-2/+3
| | | | | | | | | | | | | | Need to clear the _ReallyEnabled field before possibly continuing the loop. Also, set _Current pointer to NULL if the unit is no longer enabled. Fixes piglit lodbias regression
* | mesa: use _mesa_reference_texobj() when setting texUnit->Current pointerBrian Paul2009-03-021-2/+1
| | | | | | | | Fixes piglit copytexsubimage regression.
* | 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: remove warning/short-circuit of stencil enable w/ no stencil bufferBrian Paul2009-03-021-5/+0
| | | | | | | | With FBOs one could enable stencil before a stencil buffer is later bound.
* | mesa: add ctx->Stencil._Enabled fieldBrian Paul2009-03-023-2/+7
| | | | | | | | Only true if stenciling is enabled, and there's a stencil buffer.
* | mesa: fixed computation of _EnabledCoordUnitsBrian Paul2009-03-021-8/+18
| | | | | | | | | | This field should not include vertex textures. It indicates the coord inputs for fragment / fixed-function processing.
* | mesa: clarify comments for per-unit texture bitfieldsBrian Paul2009-03-021-8/+14
| |
* | mesa: move texture_override() code into calling loopBrian Paul2009-03-021-30/+19
| | | | | | | | We can avoid a few iterations this way.
* | mesa: move update_texture_compare_function() call out of loopBrian Paul2009-03-021-1/+3
| |
* | mesa: remove unused AUX buffersBrian Paul2009-03-023-21/+3
| | | | | | | | | | | | Remove all references to aux buffers 1..3. Keep AUX0 around for now just in case, but it'll probably go too someday. I don't know of any OpenGL drivers since the IRIX days that support aux color buffers.
* | mesa: rename, reorder FRAG_RESULT_x tokensBrian Paul2009-02-282-7/+6
| | | | | | | | | | | | | | s/FRAG_RESULT_DEPR/FRAG_RESULT_DEPTH/ s/FRAG_RESULT_COLR/FRAG_RESULT/COLOR/ Remove FRAG_RESULT_COLH (NV half-precision) output since we never used it. Next, we might merge the COLOR and DATA outputs (COLOR0, COLOR1, etc).
* | mesa: convert some #defines to enumsBrian Paul2009-02-282-49/+86
| | | | | | | | | | | | | | | | | | | | | | | | This makes debugging with gdb a bit easier. Ex: (gdb) p ctx->DrawBuffer.Attachment[BUFFER_STENCIL] Note however that gdb only seems to recognize enum types that are actually used to declare a variable somewhere. For example, gl_buffer_index isn't used to declare any vars so it's invisible to gdb. Work around this by adding a dummy function in context.c that declares some vars with these new types.
* | mesa: move _GenFlags = 0x0 to texgen loopBrian Paul2009-02-281-1/+2
| |
* | mesa: move #include "bitset.h" out of mtypes.h - not needed in core MesaBrian Paul2009-02-281-1/+0
| |
* | mesa: Sparc's IROUND() optimization is invalid.David Miller2009-02-281-9/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can't use the "fstoi" instruction like this. Unlike other floating point instructions, "fstoi" always rounds towards zero no matter what rounding mode the FPU has been set to. This was validated using the following test program: -------------------- static inline int iround(float f) { int r; __asm__ ("fstoi %1, %0" : "=f" (r) : "f" (f)); return r; } #define IROUND(x) iround(x) #define IROUND_REF(f) ((int) (((f) >= 0.0F) ? ((f) + 0.5F) : ((f) - 0.5F))) int main(void) { float f = -2.0; while (f < 3.0f) { int sparc_val = IROUND(f); int ref_val = IROUND_REF(f); if (sparc_val != ref_val) printf("DIFFERENT[%f]: REF==%d SPARC==%d\n", f, ref_val, sparc_val); f += 0.1f; } return 0; } -------------------- which prints out things like: -------------------- DIFFERENT[-1.900000]: REF==-2 SPARC==-1 DIFFERENT[-1.800000]: REF==-2 SPARC==-1 DIFFERENT[-1.700000]: REF==-2 SPARC==-1 DIFFERENT[-1.600000]: REF==-2 SPARC==-1 DIFFERENT[-1.000000]: REF==-1 SPARC==0 DIFFERENT[-0.900000]: REF==-1 SPARC==0 DIFFERENT[-0.800000]: REF==-1 SPARC==0 DIFFERENT[-0.700000]: REF==-1 SPARC==0 DIFFERENT[-0.600000]: REF==-1 SPARC==0 DIFFERENT[0.500000]: REF==1 SPARC==0 DIFFERENT[0.600000]: REF==1 SPARC==0 ... -------------------- So we have to remove Sparc's IROUND() definition, it's wrong. Signed-off-by: David S. Miller <[email protected]>
* | mesa: move GLfixed type and related macros to swrast moduleBrian Paul2009-02-281-32/+0
| | | | | | | | Fixed point is only used in swrast and sw-based drivers.
* | mesa: convert macro to inline functionBrian Paul2009-02-281-9/+12
| |
* | mesa: replace FEEDBACK_TOKEN macro with _mesa_feedback_token() inline functionBrian Paul2009-02-283-26/+30
| |
* | mesa: comments, whitespace, reformattingBrian Paul2009-02-282-32/+33
| |
* | mesa: remove dead codeBrian Paul2009-02-281-12/+0
| |
* | mesa: move gl_attrib_node struct to attrib.c tooBrian Paul2009-02-282-11/+13
| |