summaryrefslogtreecommitdiffstats
path: root/src/mesa
Commit message (Collapse)AuthorAgeFilesLines
* i965: fix broken glBitmap + depth testBrian Paul2009-01-121-4/+16
| | | | | | | | | When we use the do_blit_bitmap() function, it seems the fragment Z is always 1.0. If depth testing is on, that means that bitmap fragments are often occluded by other rendering. So, the bitmap doesn't appear even if rasterpos.Z==0. The fix is to use the intel_texture_bitmap() path when depth testing is on. Also, fix the incorrect Z coordinate. It needs to be an NDC value in [-1,1].
* i965: fix broken ARB fp fog optionsBrian Paul2009-01-122-52/+6
| | | | | | | Just call _mesa_append_fog_code() if the fragment program's FogOption is not GL_NONE. This allows us to remove some unnecessary i965 fog code. Note, the arbfplight.c demo can be used to test this (see DO_FRAGMENT_FOG).
* glsl: better fix for for-loop scope issue (commit ↵Brian Paul2009-01-123-31/+4
| | | | 6333005f7aea3e5d1d86a5c47b3fa2a1ed2f3ff0)
* Big endian fixes.Matthieu Herrb2009-01-111-1/+2
|
* build fix on big endian OpenBSD architectures.Matthieu Herrb2009-01-111-0/+6
|
* replace nearbyint() by rint() for now.Matthieu Herrb2009-01-111-1/+1
|
* __builtin_expect is a gcc 3.x feature. define it out for gcc 2.95.Matthieu Herrb2009-01-111-0/+4
| | | | Patch suggested by miod@. Thanks.
* mesa: deprecate GL/amesa.h header (allegro driver)Brian Paul2009-01-102-1/+66
|
* mesa: deprecate the GL/fxmesa.h headerBrian Paul2009-01-102-1/+104
|
* xmesa: deprecate the "XMesa" interfaceBrian Paul2009-01-107-4/+709
| | | | | Move the include/GL/xmesa*.h files to src/mesa/drivers/x11/ so they're no longer considered public.
* glsl: force creation of new scope for for-loop bodyBrian Paul2009-01-101-0/+18
| | | | | | | | | | | Fixes regression in progs/demos/convolution.c due to loop unrolling. This also allows the following to be compiled correctly: for (int i = 0; i < n; i++) { int i; ... } This fix is a bit of a hack, however. The better fix would be to change the slang_shader.syn grammar. Will revisit that...
* glsl: replace 0/1 with GL_FALSE/GL_TRUEBrian Paul2009-01-101-18/+18
|
* swrast: Fix GL_ATI_separate_stencilIan Romanick2009-01-091-0/+2
| | | | | | GL_ATI_separate_stencil is enabled by default for software rasterizers, but the extension functions weren't hooked up to the dispatch table.
* glsl: make minimum struct size = 2, not 1Brian Paul2009-01-091-1/+8
| | | | | | | 1-component structs such as "struct foo { float x; }" could get placed at any position within a register. This caused some trouble computing the field offset which assumed all struct objects were placed at R.x. It would be unusual to hit this case in normal shaders.
* glsl: fix typo in the vec2 += operator functionBrian Paul2009-01-082-2/+2
|
* mesa: set version string to 7.3-rc1Brian Paul2009-01-081-1/+1
|
* glsl: fix broken +=, -=, *=, /= operatorsBrian Paul2009-01-082-737/+786
| | | | | | | These functions need to return the final computed value. Now expressions such as a = (b += c) work properly. Also, no need to use __asm intrinsics in these functions. The resulting code is the same when using ordinary arithmetic operators and is more legible.
* mesa: fix off-by-one bug in _mesa_delete_instructions()Brian Paul2009-01-081-1/+1
|
* i965: Fix GLSL FS DPH to return the right value instead of src0.w * src1.w.Eric Anholt2009-01-071-1/+1
|
* i965: Remove worrisome comment about _NEW_PROGRAM signaling fp change.Eric Anholt2009-01-071-4/+0
| | | | | Everything now depends on either BRW_NEW_FRAGMENT_PROGRAM or BRW_NEW_VERTEX_PROGRAM.
* mesa: Remove _Active and _UseTexEnvProgram flags from fragment programs.Eric Anholt2009-01-078-41/+5
| | | | | | | | There was a note in state.c about _Active deserving to die, and there were potential issues with it due to i965 forgetting to set _UseTexEnvProgram. Removing both simplifies things. Reviewed-by: Brian Paul <[email protected]>
* i965: Remove dead brw_vs_tnl.cEric Anholt2009-01-073-61/+0
|
* i965: allow gl_FragData[0] usage when there's only one color bufferBrian Paul2009-01-071-2/+9
| | | | If gl_FragData[0] is written but not gl_FragCOlor, use the former.
* mesa: additional case in file_string()Brian Paul2009-01-071-0/+2
|
* glsl: pass GLcontext::Extension info down into GLSL preprocessorBrian Paul2009-01-073-35/+65
| | | | Now the #extension directives can be handled properly.
* glsl: bump up MAX_FOR_LOOP_UNROLL_COMPLEXITYBrian Paul2009-01-071-1/+1
|
* glsl: check that the fragment shader does not write both gl_FragColor and ↵Brian Paul2009-01-071-0/+11
| | | | gl_FragData[]
* i965: init dst reg RelAddr field to zeroBrian Paul2009-01-071-1/+2
|
* i965: Note when we drop saturate mode on the floor in a VP.Eric Anholt2009-01-071-0/+5
|
* i965: Add support for LRP in VPs.Eric Anholt2009-01-071-0/+42
| | | | Bug #19226.
* mesa: Add _mesa_snprintf.José Fonseca2009-01-075-7/+22
| | | | | | On Windows snprintf is renamed as _snprintf. (cherry picked from commit f8f9a1b620d31d1a59855fd502caed325d4a324f)
* glsl: disable some unused functions (but don't remove just yet)Brian Paul2009-01-071-1/+8
|
* glsl: also unroll loops with variable declarations such as "for (int i = 0; ..."Brian Paul2009-01-071-24/+58
|
* glsl: remove dead codeBrian Paul2009-01-071-13/+2
|
* mesa: OSMesa Makefile fixes (use LIB_DIR)Brian Paul2009-01-071-4/+3
|
* glsl: loop unroll adjustmentsBrian Paul2009-01-061-1/+20
| | | | | | | Add a "max complexity" heuristic to allow unrolling long loops with small bodies and short loops with large bodies. The loop unroll limits may need further tweaking...
* glsl: implement loop unrolling for simple 'for' loopsBrian Paul2009-01-061-24/+205
| | | | | | | | | | | | | | | | | Loops such as this will be unrolled: for (i = 0; i < 4; ++i) { body; } where 'body' isn't too large. This also helps to fix the issue reported in bug #19190. The problem there is indexing vector types with a variable index. For example: vec4 v; v[2] = 1.0; // equivalent to v.z = 1.0 v[i] = 2.0; // variable index into vector!! Since the for-i loop can be unrolled, we can avoid the problems associated with variable indexing into a vector (at least in this case).
* mesa: Move var declaration to top of scope.Brian Paul2009-01-061-0/+8
| | | | (cherry picked from commit 3740a06e28f4cd09e2a3dce2da60320aa9304df1)
* mesa: fix GL_DEPTH_CLEAR_VALUE castingBrian Paul2009-01-062-4/+4
| | | | (cherry picked from commit d14d494dcda3d80ec2cf452551c680ffb432e306)
* mesa: Fix the size per pixel for packed pixel format data type.Xiang, Haihao2009-01-063-2/+9
|
* mesa: Fix the number of components for GL_UNSIGNED_SHORT_1_5_5_5_REV. (bug ↵Xiang, Haihao2009-01-061-1/+1
| | | | #19390)
* dri: correct the damage.Xiang, Haihao2009-01-061-2/+17
| | | | Fixes bug #17234
* mesa: add GLushort cases for render to texture (Z-buffers)Brian Paul2009-01-051-2/+50
|
* mesa: fix a GLSL swizzled writemask bugBrian Paul2009-01-051-2/+18
| | | | | | | | | This fixes cases such as: vec4 v4; vec2 v2; v4.xz.yx = v2; The last line now correctly compiles into MOV TEMP[1].xz, TEMP[0].yyxw; Helps to fix the Humus Domino demo. See bug 19189.
* i965: implement OPCODE_TRUNC (round toward zero) on vertex path.Brian Paul2009-01-054-1/+7
| | | | Also, fix some RNDD vs. RNDZ confusion elsewhere.
* mesa: fix warning about possibly undefined var in GLSL compilerBrian Paul2009-01-021-6/+4
|
* mesa: fix another "out of samplers" problemBrian Paul2009-01-023-18/+50
| | | | | | Now only the samplers that are actually used by texture() functions are saved in the uniform variable list. Before, we could run out of samplers if too many were declared while only some of them were actually used.
* i965: increase number of texture samplers to 16Brian Paul2009-01-012-3/+5
| | | | | | This lets GLSL shaders use up to 16 samplers. Fixed function is still limited to 8 textures. Tested with progs/glsl/samplers.c
* i965: comments, clean-ups, re-order some functionsBrian Paul2009-01-011-34/+54
|
* i965: added OPCODE_NRM3/4Brian Paul2009-01-011-0/+3
|