summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* r600g: cayman fix integer multipliesDave Airlie2012-01-231-1/+29
| | | | | | | | Looks insane, but it does appear we need a full slot per input/output. This fixes another 180 or so piglit tests. Signed-off-by: Dave Airlie <[email protected]>
* r600g: cayman initial integer supportDave Airlie2012-01-231-22/+24
| | | | | | | | | | Adds all the easier lowhanging opcodes. Fixes ~3000 piglit tests with GLSL1.30 enabled on cayman. This just leaves the mul/div/mod ops to fix up. Signed-off-by: Dave Airlie <[email protected]>
* r600g: fix VS fog exportVadim Girlin2012-01-231-0/+5
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* dri: install dri_interface.hMatt Turner2012-01-221-0/+3
| | | | | | Broken in commit 129213e7. Reported-by Kai Wasserbäch <[email protected]>
* r600g: shift integer ops are trans unit only on r600.Dave Airlie2012-01-221-0/+1
| | | | Signed-off-by: Dave Airlie <[email protected]>
* r600g: replace trans/vector-only instruction lists with ranges (v2)Vadim Girlin2012-01-221-71/+15
| | | | | | | airlied : assert on cayman cases to keep compiler happy Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* Revert "r600g: replace trans/vector-only instruction lists with ranges"Dave Airlie2012-01-221-11/+73
| | | | | | This reverts commit 946309067c835d35a85ab2ad774df6698e6669ab. Until we check the cayman bits out properly
* r600g: srgb mode is only valid on certain format types.Dave Airlie2012-01-221-0/+8
| | | | | | | | | | | "If set, forces degamma on XYZ if format is FMT_8_8_8_8, FMT_BC1, FMT_BC2, or FMT_BC3" Don't claim support for sRGB on any other formts. This fixes glean texture_srgb. Signed-off-by: Dave Airlie <[email protected]>
* r600g: initial cube shadow samplingDave Airlie2012-01-221-2/+22
| | | | | | | It doesn't pass the piglit test, but it seems to be a lot closer than it was before. I need to track down if there is another problem. Signed-off-by: Dave Airlie <[email protected]>
* r600g: take into account kcache banks for bank swizzle checkVadim Girlin2012-01-221-2/+2
| | | | | | | | | | Due to the changes for multiple kcache banks support, now we are assigning final SRCx_SEL values for kcache access at the later stage, when building the bytecode. So we need to take into account kcache banks to distinguish the constants with the same address but different bank index. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: set round_mode to truncate and get rid of tgsi_f2i on evergreenVadim Girlin2012-01-223-56/+50
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: replace trans/vector-only instruction lists with rangesVadim Girlin2012-01-221-73/+11
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: fix some interpolation tests for evergreenVadim Girlin2012-01-221-4/+4
| | | | | | | Same fix as previously done by Dave Airlie for r600/r700 Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* configure.ac: use AC_PROG_MKDIR_PMatt Turner2012-01-211-0/+1
| | | | Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=45057
* Remove src/mesa/ppcMatt Turner2012-01-219-191/+0
| | | | It didn't actually do anything except modify the GL_RENDERER string.
* Fix mistake in 349845f7bAndrei Slăvoiu2012-01-211-1/+1
|
* r600g: implement clip vertex v2Vadim Girlin2012-01-2110-113/+196
| | | | | | | | Clip planes are uploaded as a constant buffer and used by the vertex shader to produce corresponding clip distances for hw clipping. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: improve kcache line sets handling v2Vadim Girlin2012-01-214-86/+216
| | | | | | | | | Add support for multiple kcache banks (constant buffers). Lock the required lines only. Allow up to 4 kcache line sets in the alu clause by using ALU_EXTENDED on eg+. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: no need to do CUBE coordinate handling for TXQ.Dave Airlie2012-01-211-1/+3
| | | | | | Fixes texSize on cube. Signed-off-by: Dave Airlie <[email protected]>
* r600g: make INTERP_LOAD_P0 vector-onlyVadim Girlin2012-01-211-0/+1
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* glsl: Fix 'control reaches end of non-void function' warning.Vinson Lee2012-01-201-2/+2
| | | | | | | | | | | | | Fix this GCC warning on non-debug builds. glsl_types.cpp: In member function 'gl_texture_index glsl_type::sampler_index() const': glsl_types.cpp:157: warning: control reaches end of non-void function NOTE: This is a candidate for the 8.0 branch. Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Chad Versace <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* r600g: use S_028B20_BUFFER_0_EN macro for streamout buffer enableAlex Deucher2012-01-201-1/+1
| | | | Signed-off-by: Alex Deucher <[email protected]>
* r600g: update streamout support for virtual addressesAlex Deucher2012-01-201-7/+18
| | | | Signed-off-by: Alex Deucher <[email protected]>
* Remove reference to now deleted dri/Makefile.targetsMatt Turner2012-01-201-1/+1
|
* automake: src/mesa/drivers/driMatt Turner2012-01-207-165/+37
|
* automake: src/mesa/drivers/dri/swrastMatt Turner2012-01-205-27/+82
|
* automake: src/mesa/drivers/dri/nouveauMatt Turner2012-01-205-29/+77
|
* automake: src/mesa/drivers/dri/r200Matt Turner2012-01-2011-85/+107
|
* automake: src/mesa/drivers/dri/radeonMatt Turner2012-01-2011-61/+123
|
* automake: src/mesa/drivers/dri/i915Matt Turner2012-01-207-38/+83
|
* r600g: fix streamout on evergreenVadim Girlin2012-01-201-0/+6
| | | | | | | | Enable it in the evergreen_context_draw if needed. Same as already done in the r600_context_draw for r6xx/r7xx. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
* r600g: fix combined MEM_STREAM instructionsVadim Girlin2012-01-201-1/+3
| | | | | | | | BURST_COUNT is clipped with ARRAY_SIZE, so set it to the max value to avoid clipping. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
* Always build shared dricoreMatt Turner2012-01-201-21/+8
| | | | | Tested-by: Eric Anholt <[email protected]> Signed-off-by: Matt Turner <[email protected]>
* Always build shared glapiMatt Turner2012-01-2015-82/+1
| | | | | | | | libglapi.so, libGL.so, libGLESv2.so, libGLESv1_CM.so must all come from the same version of Mesa or bad things may happen. Acked-by: Kenneth Graunke <[email protected]> Signed-off-by: Matt Turner <[email protected]>
* Remove -ffast-math from default CFLAGSMatt Turner2012-01-201-3/+0
| | | | | | | Fixes glsl-const-folding-01. inversesqrt(1.0) != 1.0 was evaluating as true. Signed-off-by: Matt Turner <[email protected]>
* intel/gen6: Some framebuffers having separate depthstencil should be unsupportedChad Versace2012-01-201-0/+9
| | | | | | | | | | | | | | | When the framebuffer has separate depth and stencil buffers, and HiZ is not enabled on the depth buffer, mark the framebuffer as unsupported. This happens when trying to create a framebuffer with Z16/S8 because we haven't enabled HiZ on Z16 yet. Fixes gles2conform test stencil8. Note: This is a candiate for the 8.0 branch. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44948 Reviewed-and-tested-by: Ian Romanick <[email protected]> Reviewed--by: Eric Anholt <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* mesa: Loosen glBlitFramebuffer restrictions on depthstencil buffers (v2)Chad Versace2012-01-201-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This loosens the format validation in glBlitFramebuffer. When blitting depth bits, don't require an exact match between the depth formats; only require that the two formats have the same number of depth bits and the same depth datatype (float vs uint). Ditto for stencil. Between S8_Z24 buffers, the EXT_framebuffer_blit spec allows glBlitFramebuffer to blit the depth and stencil bits separately. So I see no reason to prevent blitting the depth bits between X8_Z24 and S8_Z24 or the stencil bits between S8 and S8_Z24. However, we of course don't want to allow blitting from Z32 to Z32_FLOAT. Fixes Piglit fbo/fbo-blit-d24s8 on Intel drivers with separate stencil enabled. The problem was that, on Intel drivers with separate stencil, the default framebuffer has separate depth and stencil buffers with formats X8_Z24 and S8. The test attempts to blit the depth bits from a S8_Z24 buffer into the default framebuffer. v2: Check that depth datatypes match. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44665 Note: This is a candidate for the 8.0 branch. Reported-by: Xunx Fang <[email protected]> Reviewed-by: Ian Romanick <[email protected]> Signed-off-by: Chad Versace <[email protected]>
* nvc0: fix some limit cap valuesChristoph Bumiller2012-01-201-9/+15
| | | | NOTE: This is a candidate for the 8.0 branch.
* nvc0: handle discontiguous outputs in stream_output_infoChristoph Bumiller2012-01-203-28/+25
|
* mesa: allocate transform_feedback_info::Outputs array dynamicallyChristoph Bumiller2012-01-202-39/+57
| | | | | | | | | | | | The nvc0 gallium driver is advertising 128 MAX_INTERLEAVED_COMPS which made it always assert in the linker when TFB was used since the Outputs array was smaller than that maximum. v2: added assertions NOTE: This is a candidate for the 8.0 branch. Reviewed-by: Paul Berry <[email protected]>
* r600g: fixup AR handling (v5)Dave Airlie2012-01-204-7/+106
| | | | | | | | | | | | | | | | | | | | | | | So it appears R600s (except rv670) do AR handling different using a different opcode. This patch fixes up r600g to work properly on r600. This fixes ~100 piglit tests here (in GLSL1.30 mode) on rv610. v3: add index_mode as per the docs. This still fails any dst relative tests for some reason I can't quite see yet, but it passes a lot more tests than without. v4: add a nop after dst.rel this could be improved using a second pass, where we only insert nops if two instructions are sure to collide. The docs say r600, rv610, rv630 needs this, and not rv670, rs780, rs880, need AMD to confirm rv620, rv635. v5: add is_nop_inst. NOTE: This is a candidate for stable branches. Signed-off-by: Dave Airlie <[email protected]>
* mesa: include arrayobj.h to silence implicit function declaration warningBrian Paul2012-01-201-0/+1
| | | | Caused by commit 7a1e941ebee43cb97a2c77fd2269999b202308a2.
* mesa: Fix and speedup gl_array_object::_MaxElement computation.Mathias Fröhlich2012-01-202-139/+28
| | | | | | | | | | Use a bitmask approach to compute gl_array_object::_MaxElement. To make this work correctly depending on the shader type actually used, make use of the newly introduced typed bitmask getters. With this change I gain about 5% draw time on some osgviewer examples. Signed-off-by: Mathias Fröhlich <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Introduce enabled bitfield helper functions.Mathias Froehlich2012-01-202-0/+41
| | | | | | | | | | Depending on the installed shader type, different arrays are used from gl_array_object. Provide helper functions that compute the bitmask of these arrays that are finally enabled for a given shader type. The will be used in a followup change. Signed-off-by: Mathias Fröhlich <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* mesa: Use BITFIELD64_RANGE for VERT_BIT_*_ALL.Mathias Fröhlich2012-01-201-5/+5
| | | | | Signed-off-by: Mathias Fröhlich <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* i915g: Fix indentation.Stéphane Marchesin2012-01-191-1/+1
|
* i915g: Fix indentation and comment.Stéphane Marchesin2012-01-191-2/+2
|
* glsl: Fix isinf() for non-C99-compliant compilers.Paul Berry2012-01-191-14/+22
| | | | | | | | | | | | | | | | | | Commit ede60bc4670a8d9c14921c77abee1ac57fc0e6bf (glsl: Add isinf() and isnan() builtins) uses "+INF" in the .ir file to represent infinity. This worked on C99-compliant compilers, since the s-expression reader uses strtod() to read numbers, and C99 requires strtod() to understand "+INF". However, it didn't work on non-C99-compliant compilers such as MSVC. This patch modifies the s-expression reader to explicitly check for "+INF" rather than relying on strtod() to support it. This is a candidate for the 8.0 branch. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44767 Tested-by: Morgan Armand <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* r600g: fix typo in evergreen registerAlex Deucher2012-01-191-7/+6
| | | | Signed-off-by: Alex Deucher <[email protected]>
* svga: move svga_texture() casts/calls in svga_surface_copy()Brian Paul2012-01-191-2/+4
| | | | | | | | | | | | | | To fix failed assertions when calling glCopyBufferSubData(). svga_texture() asserts that the resource is a texture. Simply move the calls to svga_texture() after the code that handles non-texture copies so that we don't call it with non-texture resources. Fixes glean bufferObject failure. NOTE: This is a candidate for the 8.0 branch. Reviewed-by: José Fonseca <[email protected]>