summaryrefslogtreecommitdiffstats
path: root/src/mesa
Commit message (Collapse)AuthorAgeFilesLines
* i965/vs: Handle destinations in the MRF file.Eric Anholt2011-09-201-0/+6
| | | | | We've been referencing MRFs through the HW_REG file so far, but that makes it harder to handle compute-to-MRF and similar optimizations.
* i965/vs: Add a function for how many MRFs get written as part of a SEND.Eric Anholt2011-09-202-0/+39
| | | | | This will be used for compute-to-mrf, which needs to know when MRFs get overwritten.
* i965/vs: Remove dead fields of src_reg.Eric Anholt2011-09-201-2/+0
| | | | | | These were copy and pasted from the FS, and are never used. Reviewed-by: Kenneth Graunke <[email protected]>
* i965/vs: Add support for simple algebraic optimizations.Eric Anholt2011-09-203-0/+96
| | | | | | | | | | | | | | We generate silly code for array access, and it's easier to generally support the cleanup than to specifically avoid the bad code in each place we might generate it. Removes 4.6% of instructions from 41.6% of shaders in shader-db, particularly savage2/hon and unigine. v2: Fixes by Ken: Make is_zero/one member functions, and fix a progress flag. Reviewed-by: Kenneth Graunke <[email protected]>
* i965: Fix polygon stipple offset state flagging.Eric Anholt2011-09-201-4/+6
| | | | | | | | | | | _NEW_WINDOW_POS wasn't a real Mesa state flag, but we were missing _NEW_BUFFERS to update the stipple offset when FBO binding or window size changed, and _NEW_POLYGON to update when stippling gets enabled. Fixes oglconform's tristrip test. Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Yuanhan Liu <[email protected]>
* i965: Add missing _NEW_POLYGON flag to polygon stipple upload.Eric Anholt2011-09-201-1/+3
| | | | | | | | Because we skip the pattern upload when stippling is disabled, we need to check again when it might have been turned on. Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Yuanhan Liu <[email protected]>
* i965: Fix compiler warnings.Eric Anholt2011-09-201-6/+4
|
* mesa: fix error handling for glMaterial*Yuanhan Liu2011-09-201-1/+12
| | | | | | | | | | | | | | | Trigger GL_INVALID_ENUM error if the face paramter is not a valid value. Trigger GL_INVALID_VALUE error if the GL_SHININESS value is out side [0, ctx->Constant.MaxShiniess]. v2: fix the max shininess value. v3: suggested by Brian, move the face check into glMaterialfv function to reduce code duplicate. Also, refactor the error message. Signed-off-by: Yuanhan Liu <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* i965/fs: Implement texelFetch() on Gen4.Kenneth Graunke2011-09-192-4/+18
| | | | | Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965/fs: Implement texelFetch() on Ivybridge.Kenneth Graunke2011-09-191-4/+21
| | | | | Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965/fs: Implement texelFetch() on Ironlake and Sandybridge.Kenneth Graunke2011-09-196-5/+19
| | | | | Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* glapi: Update generated file modified by previous commitIan Romanick2011-09-191-3057/+1814
|
* mesa: Delete stale comment about MESAX extensionsIan Romanick2011-09-191-2/+0
| | | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* mesa: Replace _mesa_rgba_logicop_enabled(ctx) with ↵Ian Romanick2011-09-196-23/+11
| | | | | | | | | | | | ctx->Color.ColorLogicOpEnabled Since GL_EXT_blend_logic_op is removed, _mesa_rgba_logicop_enabled(ctx) just returns ctx->Color.ColorLogicOpEnabled. That seems kind of silly. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* mesa: Use ColorLogicOpEnabled instead of _LogicOpEnabledIan Romanick2011-09-1910-25/+7
| | | | | | | | | | Since GL_EXT_blend_logic_op is removed, _LogicOpEnabled and ColorLogicOpEnabled always have the same value. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* mesa: Remove support for GL_EXT_blend_logic_opIan Romanick2011-09-194-17/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | Support is removed for four reasons: 1. The implementation was broken with respect to separate blend equations. The GL_EXT_blend_equation_separate spec says: "If EXT_blend_logic_op and EXT_blend_equation_separate are both supported, the logic op blend equation should be supported separately for RGB and alpha as with the other blend equation modes." But Mesa's implementation of GL_LOGIC_OP specifically forbids this. 2. No hardware supported by Mesa can support separate blend equations involving GL_LOGIC_OP. 3. No applications could be found that use this extension. 4. No other Linux OpenGL drivers support this extension. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Cc: Brian Paul <[email protected]>
* st/mesa: Remove support for GL_EXT_blend_logic_opIan Romanick2011-09-192-10/+1
| | | | | | | | | | It was broken, and it isn't really useful anyway. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Cc: Brian Paul <[email protected]>
* mesa: Remove unused _mesa_enable_imaging_extensions functionIan Romanick2011-09-192-19/+0
| | | | | | | | | | The last user of this function was driInitExtensions, and that function was removed in a previous commit. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Roland Scheidegger <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* mesa: Throw an error when starting conditional render on an active query.Eric Anholt2011-09-191-1/+1
| | | | | | | | | | | | | | | From the NV_conditional_render spec: BeginQuery sets the active query object name for the query type given by <target> to <id>. If BeginQuery is called with an <id> of zero, if the active query object name for <target> is non-zero, if <id> is the active query object name for any query type, or if <id> is the active query object for condtional rendering (Section 2.X), the error INVALID OPERATION is generated. Fixes piglit nv_conditional_render-begin-while-active. Reviewed-by: Brian Paul <[email protected]>
* mesa: Throw an error instead of asserting for condrender with query == 0.Eric Anholt2011-09-191-1/+2
| | | | | | | | | | | | | | | From the NV_conditional_render spec: BeginQuery sets the active query object name for the query type given by <target> to <id>. If BeginQuery is called with an <id> of zero, if the active query object name for <target> is non-zero, if <id> is the active query object name for any query type, or if <id> is the active query object for condtional rendering (Section 2.X), the error INVALID OPERATION is generated. Fixes piglit nv_conditional_render-begin-zero. Reviewed-by: Brian Paul <[email protected]>
* mesa: Add support for Begin/EndConditionalRender in display lists.Eric Anholt2011-09-191-0/+45
| | | | | | Fixes piglit nv_conditional_render-dlist. Reviewed-by: Brian Paul <[email protected]>
* mesa: fix an autoconf build-system bug related to glsl_to_tgsiMarek Olšák2011-09-191-3/+2
| | | | | | | | | st_glsl_to_tgsi.cpp was completely ignored by makedepend because it was not included in ALL_SOURCES, which caused that the file was not recompiled when certain header files were changed (like glsl/ir.h). The first part of this commit is just a consolidation. The second part is the fix.
* mesa: fix format/type check in unpack_image() for bitmapsBrian Paul2011-09-191-1/+1
| | | | | Passing type == GL_BITMAP returns 0 while error values return -1. This fixes glPolygonStipple being compiled into display lists.
* i965 new VS: Fix copy propagation of double negatives.Paul Berry2011-09-191-1/+1
| | | | | | | | | | | | | When copy propagating a value into an instruction that negates its argument, we need to invert the sense of the value's "negate" flag, so that -(+x) becomes -x and -(-x) becomes +x. Previously, we were always setting the value's "negate" flag to true in this circumstance, so that both -(+x) and -(-x) turned into -x. Fixes Piglit test vs-double-negative.shader_test. Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: Advertise GL_OES_compressed_paletted_texture in OpenGL ES1.xIan Romanick2011-09-191-1/+1
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]> Tested-by: Jin Yang <[email protected]>
* mesa: Remove redundant compressed paletted texture error checksIan Romanick2011-09-191-29/+5
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]> Tested-by: Jin Yang <[email protected]>
* mesa: Refactor compressed texture error checks to work with paletted texturesIan Romanick2011-09-191-11/+70
| | | | | | | | | | | | | This code was really broken before. A lot of the error checks were done much later (too late), and some of the error checks would fail. The underlying problem is that Mesa doesn't ever keep compressed paletted textures in their original format. The textures are immediately converted to some RGB or RGBA format. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=39991 Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]> Tested-by: Jin Yang <[email protected]>
* mesa: Add _mesa_cpal_compressed_format_typeIan Romanick2011-09-192-0/+20
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]> Tested-by: Jin Yang <[email protected]>
* mesa: Refactor expected texture size check in cpal_get_infoIan Romanick2011-09-192-13/+35
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]> Tested-by: Jin Yang <[email protected]>
* mesa: Add GL_OES_compressed_paletted_texture formats to _mesa_base_tex_formatIan Romanick2011-09-191-0/+19
| | | | | | Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]> Tested-by: Jin Yang <[email protected]>
* mesa: Add GL_OES_compressed_paletted_texture formats to ↵Ian Romanick2011-09-191-0/+13
| | | | | | | | _mesa_is_compressed_format Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]> Tested-by: Jin Yang <[email protected]>
* mesa: fix error handling for glMapBufferRangeYuanhan Liu2011-09-191-0/+11
| | | | | | | | Accroding the man page, GL_INVALID_VALUE would generated if access has any bits set other than those valid defined bits. Signed-off-by: Yuanhan Liu <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* mesa: generate GL_INVALID_OPERATION in glIsEnabledIndex() between Begin/EndBrian Paul2011-09-191-0/+1
|
* mesa: fix error handling for glSelectBufferYuanhan Liu2011-09-191-0/+5
| | | | | | | According the man page, trigger a GL_INVALID_VALUE if size < 0. Signed-off-by: Yuanhan Liu <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* mesa: fix error handling for glPixelZoomYuanhan Liu2011-09-191-0/+2
| | | | | | | | | According the man page, GL_INVALID_OPERATION should generated if glPixelZoom is executed between the execution of glBegin and the corresponding execution of glEnd. Signed-off-by: Yuanhan Liu <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* mesa: fix error handling for glIsEnabledYuanhan Liu2011-09-191-0/+2
| | | | | | | | | According the man page, GL_INVALID_OPERATION should be generated if glIsEnabled is executed betwwen the execution of glBegin and the correspoding execution of glEnd. Signed-off-by: Yuanhan Liu <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* mesa: fix error handling for glTexEnvYuanhan Liu2011-09-191-1/+2
| | | | | | | | Fix error handling while calling glTexEnv with invalid texture environment parameters. Signed-off-by: Yuanhan Liu <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* mesa: fix error handling for some glGet* functionsYuanhan Liu2011-09-191-0/+15
| | | | | | | | | | | | | | | According to the man page, it should trigger a GL_INVALID_OPERATION while calling some glGet* functions inside glBegin and glEnd. This patch dose handle the following functions: glGetBooleanv glGetFloatv glGetIntegerv glGetInteger64v glGetDoublev Signed-off-by: Yuanhan Liu <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* mesa: fix error handling for glEvalMesh1/2DYuanhan Liu2011-09-191-0/+4
| | | | | | | | According man page, trigger error when calling glEvalMesh1/2D inside glBegin/glEnd. Signed-off-by: Yuanhan Liu <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* swrast: fix more store_texel() bugsBrian Paul2011-09-181-4/+4
| | | | Fixes https://bugs.freedesktop.org/show_bug.cgi?id=40412 on swrast.
* gallium: move clear paths from rgba to a pointer to a color union (v2)Dave Airlie2011-09-181-11/+11
| | | | | | | | | | | | | | | This moves the gallium interface for clears from using a pointer to 4 floats to a pointer to a union of float/unsigned/int values. Notes: 1. the value is opaque. 2. only when the value is used should it be interpretered according to the surface format it is going to be used with. 3. float clears on integer buffers and vice-versa are undefined. v2: fixed up vega and graw, dropped hunks that shouldn't have been in patch. Signed-off-by: Dave Airlie <[email protected]>
* mesa: use ctx->Driver.AllocTextureImageBuffer() to alloc texture memoryBrian Paul2011-09-172-41/+21
|
* mesa: plug in swrast texture image alloc/free functionsBrian Paul2011-09-171-1/+2
| | | | Use the swrast allocation/free functions instead of core Mesa.
* swrast: add Alloc/FreeTextureImageBuffer() driver functionsBrian Paul2011-09-172-0/+48
| | | | | Not called yet. These will replace the core Mesa functions for allocating and freeing malloc'd texture memory.
* mesa: add AllocTextureImageBuffer() driver hookBrian Paul2011-09-171-0/+6
|
* mesa: move gl_texture_image::FetchTexel fields to swrastBrian Paul2011-09-1715-355/+378
| | | | | This also involves passing swrast_texture_image instead of gl_texture_image into all the fetch functions.
* swrast: plug in _swrast_new/delete_texture_image() functionsBrian Paul2011-09-171-2/+2
|
* radeon: make radeon_texture_image a subclass of swrast_texture_imageBrian Paul2011-09-175-32/+43
|
* intel: make intel_texture_image a subclass of swrast_texture_imageBrian Paul2011-09-178-93/+101
| | | | | We need to subclass swrast_texture_image because if we use swrast for fallback rendering, we'll need to have swrast_texture_image objects.
* swrast: introduce new swrast_texture_image structBrian Paul2011-09-173-0/+63
| | | | | No subclass fields yet. Subsequent patches will add the fields related to software rendering that are currently in gl_texture_image.