summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Rather than always allocating 100 instructions, put instructions into aBrian Paul2006-10-291-18/+42
| | | | | temporary buffer, then copy into a malloc'd array of the correct size. According to Glean texCombine, we never need more than 21 instructions.
* New _mesa_exec_vertex_state_program() function. Start of some re-org.Brian Paul2006-10-293-9/+28
|
* fix wrong inequalityBrian Paul2006-10-291-1/+1
|
* Change _mesa_init_instruction() to initialize an array of instructions.Brian Paul2006-10-297-27/+32
|
* Program instructions are initialized before parsing so no need to setBrian Paul2006-10-291-7/+1
| | | | | | Abs, NegateAbs, CondMask and CondSwizzle fields to defaults here. CondMask was getting mis-set. Removing the incorrect assignment improves fragment program speed by 15%.
* Added PROGRAM_CONSTANT to get_register_pointer().Brian Paul2006-10-281-0/+15
| | | | More DEBUG_FRAG code.
* special case END in _mesa_print_instruction()Brian Paul2006-10-281-0/+3
|
* Implement _mesa_append_fog_code() for fragment program fog options.Brian Paul2006-10-282-19/+178
|
* If DEBUG, check that all array indices really do fall in [start,end] inBrian Paul2006-10-261-1/+19
| | | | the DrawRangeElements() call. Warn the user if that's not true.
* remove code for inserting mvp transform into position-invariant vertex progs ↵Roland Scheidegger2006-10-261-96/+7
| | | | and instead use _mesa_insert_mvp_code().
* Previously, if a fragment program referenced fragment.fogcoord but theBrian Paul2006-10-251-2/+3
| | | | | program didn't use the ARB_fog_linear option, the fragment program's fragment.fogcoord register wasn't loaded properly.
* change some bogus comments regarding the base e exponential function used ↵Roland Scheidegger2006-10-252-7/+6
| | | | for fog in vertex programs.
* fix (per-vertex) fog when using ARB_vp by incorporating fog factor ↵Roland Scheidegger2006-10-246-67/+153
| | | | computation into the vertex program (not yet fixed for swtnl). Simplify (and correct) the VTX_TCL_OUTPUT_VTXFMT handling when using vertex programs, turns out it's solely driven by the needs of the past-vertex stage of the pipeline, this should fix lockups with ill-specified applications using vertex programs (for instance applications enabling fog but not writing to fog coord output will now get (conformant) undefined results instead of lockups).
* s/GLchan/GLubyte/Brian Paul2006-10-241-4/+4
|
* whitespace clean-upBrian Paul2006-10-242-4/+4
|
* Emit cliprects in the userspace driver as required, rather thanKeith Whitwell2006-10-2310-66/+81
| | | | | | | | passing them to the kernel. This works because all drawing commands in the 965 driver are emitted with the lock held and the batchbuffer is always flushed prior to releasing the lock. This allows multiple cliprects to be dealt with, without replaying entire batchbuffers and redundantly re-emitting state.
* assorted clean-upsBrian Paul2006-10-221-30/+24
|
* don't save color/z if fragment is killedBrian Paul2006-10-221-18/+20
|
* minor tweaks good for about 12% faster executionBrian Paul2006-10-221-66/+71
|
* silence used var warningsBrian Paul2006-10-221-1/+2
|
* Color clamping fixes.Brian Paul2006-10-226-8/+52
|
* move/improve comments, clean up code in a few placesBrian Paul2006-10-211-21/+16
|
* fix another logic error in computing deferredTextureBrian Paul2006-10-211-5/+9
|
* For deferredTexture, need to check if the fragment program/shader writesBrian Paul2006-10-211-6/+31
| | | | the fragment Z.
* move interpolate_varying() callBrian Paul2006-10-211-4/+2
|
* don't use params passed to Clear()Brian Paul2006-10-211-2/+6
|
* Move interpolate_texcoords() and interpolate_varying() calls into ↵Brian Paul2006-10-211-21/+18
| | | | | | shade_texture_span(). Added some INLINE hints.
* Consolidate some code into shade_texture_span().Brian Paul2006-10-191-84/+81
| | | | Clean up logic for deferred texturing/shading.
* fixed Fixed/Int bugBrian Paul2006-10-191-2/+2
|
* remove temp codeBrian Paul2006-10-191-22/+15
|
* New bin/minstall script - a minimal replacement for 'install'.Brian Paul2006-10-195-6/+6
| | | | Correctly handles symlinks so we can get rid of the COPY_LIBS stuff.
* fix problem when CHAN_BITS == 32 (bug 8704), remove unneeded assertionBrian Paul2006-10-191-1/+4
|
* Fix nonportable pointer+unsigned arithmetic. Use pointer+int.Michal Krol2006-10-191-25/+28
|
* added clamp_colors(), updated assertionsBrian Paul2006-10-181-21/+33
|
* minor re-org, doxygen commentsBrian Paul2006-10-181-11/+13
|
* Changed install filenames to libGL* and libOSMesa* so things work on DarwinBrian Paul2006-10-181-5/+5
| | | | | | | where GL_LIB_NAME = libGL.dylib but the other library name is libGL.1.dylib Unlike other platforms, the version number is in the middle of the name, not at the end. See bug 8671
* Enable GLX_SGI_make_current_read for radeon.Ian Romanick2006-10-185-34/+57
| | | | | | | | | | | | | | Added code to track the drawable bound to the context for reading. In addition, when a drawable is initially bound (for reading or drawing) or when the size of the drawable changes, update the size of the framebuffer object that back the drawable (for software fallbacks). Deprecate the old GetBufferSize interface. Bump the driver date. These changes were tested with wincopy on both direct rendering and accelerated indirect rendering (AIGLX).
* Don't use x/y/w/h params given to Clear().Brian Paul2006-10-182-160/+59
|
* Want to stop passing x/y/width/height to Clear() function.Brian Paul2006-10-1815-122/+168
| | | | | | | The coordinates need to be computed after we've got the hw lock. Code updated to: 1. Ignore all/x/y/width/height/ params passed to Clear func. 2. Pass 0,0,0,0,0 to _swrast_Clear() until they're totally removed.
* Don't pass x/y/width/height to ctx->Driver.Accum().Brian Paul2006-10-184-15/+14
| | | | | Compute the region after we've locked (and possibly updated the buffer's size). Same thing is needed for ctx->Driver.Clear().
* Fix broken line clipping.Brian Paul2006-10-181-3/+8
| | | | | | | When both ends of the line were clipped, we were using the new v0 instead of the original v0 when computing the location of the second vertex. Thus, the second vertex's position was incorrect. Thanks to Heath Feather for finding a test case.
* Fix a dangerous use of ASSERT in an else-clause not enclosed in braces.Brian Paul2006-10-181-2/+4
| | | | We've been lucky if this hasn't been causing line rendering bugs.
* Always convert colors to float before running a fragment shader/program.Brian Paul2006-10-174-145/+61
|
* fix fog color bugBrian Paul2006-10-171-3/+18
|
* Move struct atifs_machine into s_atifragshader.cBrian Paul2006-10-173-55/+129
| | | | Add support for runtime colorbuffer types.
* Seperate interpolate_colors() and interpolate_specular().Brian Paul2006-10-171-174/+192
| | | | Fix bugs in apply_aa_coverage().
* apply_aa_coverage() for ubyte/ushort/floatBrian Paul2006-10-171-6/+32
|
* new assertions - one of which is currently failing with arbfslight.cBrian Paul2006-10-171-0/+4
|
* remove obsolete intelBufferSize(), bump driver dateBrian Paul2006-10-171-23/+2
|
* Remove get_buffer_size()Brian Paul2006-10-172-15/+4
| | | | | Always check window size in XMesaMakeCurrent() in case glViewport is not called.