summaryrefslogtreecommitdiff
path: root/src/mesa
AgeCommit message (Collapse)Author
2008-04-07mesa: new _mesa_remove_varying_reads() functionBrian
We'll apply this function to GLSL vertex programs. In GLSL it's legal to read and write varying (output) vars in a vertex shader. But reading from an output register isn't supported by all hardware. This routine examines the vertex program for that condition and rewrites it to use temporary registers where needed.
2008-04-07mesa: added _mesa_insert_instructions()Brian
Also, use new _mesa_free_instructions() in a few places.
2008-04-07mesa: added _mesa_free_instructions()Brian
2008-04-04mesa: no longer combine vertex/fragment shader parameters/uniformsBrian
GLSL Vertex and fragment shaders now have independent parameter buffers. A new gl_uniform_list is used to keep track of program uniforms and where each uniform is located in each shader's parameter buffer. This makes better use of the space in each buffer and simplifies shader linking.
2008-04-04mesa: new functions for managing list/index of uniformsBrian
2008-04-04gallium: always pass size=4 to make_immediate()Brian
Mesa always packs 4 immediates into each parameter/const buffer slot. I think we were just getting lucky with this as it was.
2008-04-04gallium: adjust the code in update_textures() to look more like ↵Brian
update_samplers()
2008-04-04gallium: state tracker fixes for compressed texturesRoland Scheidegger
2008-04-04gallium: add new call to st_flush_bitmap_cache() to fix recent regressionBrian Paul
2008-04-04gallium: make sure to set the SamplersUsed field for bitmap/drawpixels shadersBrian Paul
Also, make sure that field is copied/updated in the program clone and combine functions. Without this we weren't getting SAMP declarations in the TGSI shaders.
2008-04-04gallium: Revert st_gl_flush() changes from when the **fence argument was added.Michel Dänzer
As st_gl_flush() isn't used by st_finish() anymore, it doesn't have to make sure pipe->flush() always gets called.
2008-04-04gallium: Call st_flush() instead of st_gl_flush() in st_finish().Michel Dänzer
This is enough for the current purpose of st_finish(), which is to wait for things to settle down before context teardown.
2008-04-04Alias glStencilOpSeparateATI with glStencilOpSeparate.Brian
2008-04-04Finish up ATI_separate_stencilBrian
Add entrypoints to glapi XML file and regenerate files. Implement glStencilOpSeparateATI(). Consolidate some code in stencil.c
2008-04-04add missing _mesa_StencilFuncSeparateATI functionRoland Scheidegger
2008-04-04gallium: fix two-side stencil handlingRoland Scheidegger
Previously all drivers were in twosided mode since they checked for stencil.enable[1] flag which was a copy of stencil.enable[0]. Note that drivers should not reference stencil[1] state (other than the enable) if twosided stenciling is disabled (for now the stencil state is still copied but for instance clear_with_quads won't provide useful values in there). Also, use _TestTwoSide instead of TestTwoSide since results would be bogus otherwise if using APIs with implicit two side stencil enable (i.e. core ogl 2.0).
2008-04-04gallium: Always allocate new const buffers instead of modifying existing ones.Michel Dänzer
2008-04-03gallium: test if PIPE_FORMAT_YCBCR[_REV] is supported and enable ↵Brian
GL_MESA_ycbcr_texture Update texture format selection code too.
2008-04-03gallium: set rasterizer.gl_rasterization_rules = 1 in a few more placesBrian
2008-04-03gallium: streamline viewport/raster/shader state for clearing with quadsBrian Paul
Move init of these items to new st_init_clear().
2008-04-03gallium: include st_cb_bitmap.h to silence warningBrian Paul
2008-04-03gallium: remove the temporary/test TEST_DRAW_PASSTHROUGH codeBrian Paul
2008-04-03gallium: use identity viewport fix broken clear_with_quad() pathBrian Paul
Since bypass_clipping is set and we're specifying quad vertexes in window coords, setup identity viewport.
2008-04-03gallium: call st_flush_bitmap_cache()Brian Paul
2008-04-03gallium: set gl_rasterization_rulesBrian Paul
2008-04-02gallium: add a flag to turn on gl rasterization rulesKeith Whitwell
Use this to set up hardware rasterization (if your hardware can do it) or otherwise turn on various tweaks in the draw module. Currently only hooked up to point biasing code.
2008-04-02gallium: add temporary facility for rasterization-time clamping of point sizesKeith Whitwell
2008-04-01gallium: init ctx->Const.MaxTextureUnitsBrian
2008-04-01handle IsPositionInvariant flagBen Skeggs
2008-04-01gallium: Fencing fix.Michel Dänzer
Make sure the struct pipe_fence_handle* we point st_flush() to is initialized to NULL, so winsys->fence_reference() doesn't try to unreference a random struct pipe_fence_handle* pointer.
2008-03-31gallium: used inverted bitmap texture to simplify the fragment shader.Brian
"Off" bits get stored as texel=0xff and "on" bits get stored as texel=0x0. Then use KIL -tmp to kill the off bits and keep the on bits. This shortens the fragment program by two instructions.
2008-03-31fix parsing bug involving comments at the end of ARB v/f programsMarkus Amsler
2008-03-31gallium: use cso_save/restore_sampler_textures() functionsBrian
2008-03-31gallium: set the bypass_vs flag nowBrian
The glBitmap vertex shader is a no-op, but we still have to specify it in order to convey the number of inputs/outputs.
2008-03-31gallium: turn on clipping for bitmapsBrian
Bitmaps can extend beyond window edges so we need to clip. Also, move some state atom vars to st_context to be a bit more efficient.
2008-03-31gallium: Eliminate p_winsys::printfJosé Fonseca
Not convenient and almost not used at all. Better replacements in p_debug.h
2008-03-29gallium: Set vertex state/buffers en-mass.Brian Paul
2008-03-28gallium: begin some bounding box code for bitmap cacheBrian
2008-03-28gallium: added an (int) cast in setup_bitmap_vertex_data() to fix a ↵Brian
signed/unsigned arithmetic problem Negative values became very large uints.
2008-03-28gallium: don't call st_flush_bitmap_cache() if the only change is ↵Brian
_NEW_PACKUNPACK state
2008-03-28gallium: disable a debug hackBrian
2008-03-28gallium: implement a glBitmap cacheBrian
The bitmap cache attempts to accumulate a series of glBitmap calls in a buffer to effectively render a whole bunch of bitmaps at once. The cache can be disabled, if needed, by setting UseBitmapCache=GL_FALSE.
2008-03-28mesa: fix texture/renderbuffer mix-up in test_attachment_completeness()Brian Paul
2008-03-28gallium: re-work texture format selection codeBrian Paul
Use same code for choosing texture format and renderbuffer format.
2008-03-28gallium: remove redundant compare bit in sampler stateRoland Scheidegger
2008-03-27gallium: replace PIPE_ATTRIB_MAX with PIPE_MAX_ATTRIBSBrian
The later follows the naming scheme of other limits. Keep the old definition until all possible usage is updated.
2008-03-27consolidate some parsing functions that were pretty much identical for ↵Brian
vertex/fragment programs cherry-picked from master
2008-03-27mesa: misc sync-up with masterBrian
2008-03-27raise GL_INVALID_OPERATION if glProgramString compilation failsBrian
cherry-picked from master
2008-03-27Fix the compile of disabled DEBUG_PARSING code.Brian
cherry-picked from master