summaryrefslogtreecommitdiffstats
path: root/src/gallium
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]>
* 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]>
* 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]>
* 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
|
* 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 glapiMatt Turner2012-01-202-9/+0
| | | | | | | | 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]>
* 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
|
* 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]>
* i915g: Fix indentation.Stéphane Marchesin2012-01-191-1/+1
|
* i915g: Fix indentation and comment.Stéphane Marchesin2012-01-191-2/+2
|
* 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]>
* i915g: Don't avoid flushing when we have a pending fence.Stéphane Marchesin2012-01-181-1/+4
| | | | | | | Otherwise the fence will never arrive. Also check for a NULL i915->batch. NOTE: This is a candidate for the 8.0 branch.
* i915g: Don't invert signalled/unsignalled fencesStéphane Marchesin2012-01-181-2/+2
| | | | NOTE: This is a candidate for the 8.0 branch.
* st/dri: Remove useless flush front.Stéphane Marchesin2012-01-181-2/+7
| | | | | | | | | | | | | | | In the following scenario: - CreateContext C1 - MakeCurrent C1 - DestroyContext C1 (does not actually destroy the first context, postponed until the next MakeCurrent) - CreateContext C2 - MakeCurrent C2 MakeCurrent will call flush on a half destroyed context, leading to crashes. Since the other paths (destroy and makecurrent) already flush the context, there is no need to flush here, so we remove this useless flush front call. This fixes GPU crashes with Chrome and gallium drivers.
* gbm: Validate usage flags in gbm_bo_create_from_egl_image()Kristian Høgsberg2012-01-181-1/+1
| | | | | The entry point is supposed to validate that the EGLImage is suitable for the passed in usage flags, but that was never implemented.
* mesa: Make the register allocator allocation take a ralloc context.Eric Anholt2012-01-181-1/+1
| | | | | | This fixes a memory leak on i965 context destruction. NOTE: This is a candidate for the 8.0 branch.
* svga: change PIPE_CAPF_MAX_TEXTURE_LOD_BIAS from 16.0 to 15.0Brian Paul2012-01-181-1/+1
| | | | | | | | | The legal range for the device is apparently [-16.0, +15.0]. Limiting the range to [-15, +15] fixes piglit's lodbias test. NOTE: This is a candidate for the 8.0 branch. Reviewed-by: José Fonseca <[email protected]>
* svga: fix min/max lod clampingBrian Paul2012-01-181-4/+6
| | | | | | | | | | The interaction between the mipmap lod min/max limits and the texture base/max level limits is kind of tricky. Changing the base level didn't work as expected before. NOTE: This is a candidate for the 8.0 branch. Reviewed-by: José Fonseca <[email protected]>
* svga: add 0.5 in float->int conversion of sample min/max lodBrian Paul2012-01-181-2/+2
| | | | | | | | This makes lod clamping more consistent with other drivers. NOTE: This is a candidate for the 8.0 branch. Reviewed-by: José Fonseca <[email protected]>
* r600g: fix ISLT on r600/700Dave Airlie2012-01-181-1/+1
| | | | | | This fixes ISLT like evergreen. Signed-off-by: Dave Airlie <[email protected]>
* r600g: make r600/700 use correct ineg.Dave Airlie2012-01-181-1/+1
| | | | | | Noticed by Vadim Girlin on irc. Signed-off-by: Dave Airlie <[email protected]>
* r600g: fix some of the interpolation tests.Dave Airlie2012-01-181-5/+10
| | | | | | | This enables linear gradients if we need a linear, it also sets the flat shade flag for color/constant interpolations. Signed-off-by: Dave Airlie <[email protected]>
* r600g: fix UINT_TO_FLT on evergreenVadim Girlin2012-01-181-1/+1
| | | | | | | It should be processed as trans-only. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: add workaround for original R600 PS setupAlex Deucher2012-01-171-2/+7
| | | | | | | | | The original R600 requires the UNCACHED_FIRST_INST bit to be set in the PS. Signed-off-by: Alex Deucher <[email protected]> Note: this is candidate for the stable branches.
* r600g: fix recip_uint on r600.Dave Airlie2012-01-181-0/+1
| | | | Signed-off-by: Dave Airlie <[email protected]>
* r600g: fix USLT for r600-egVadim Girlin2012-01-171-2/+2
|
* scons: Add Haiku build supportAlexander von Gluck IV2012-01-171-4/+10
| | | | Enables building stock Mesa under the Haiku operating system.
* r600g: rework IDIV/UDIV and implement MOD/UMOD (v2)Vadim Girlin2012-01-172-133/+593
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* Complete ARGB8888 naming convention format renames missedScott Moreau2012-01-171-4/+3
|
* softpipe: Silence unused variable warning on non-LLVM builds.Vinson Lee2012-01-161-0/+2
| | | | | | | | | Fix this GCC warning with non-LLVM builds. sp_screen.c: In function ‘softpipe_get_shader_param’: sp_screen.c:141:28: warning: unused variable ‘sp_screen’ [-Wunused-variable] Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* llvmpipe: Remove unused variable 'packed' from lp_test_round.Vinson Lee2012-01-161-2/+0
| | | | | | | | | | Fix this GCC warning. lp_test_round.c: In function ‘test_round’: lp_test_round.c:126:13: warning: variable ‘packed’ set but not used [-Wunused-but-set-variable] Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: José Fonseca <[email protected]>
* util: Silence GCC unused-but-set-variable warning.Vinson Lee2012-01-161-0/+2
| | | | | | | | | | Fix this GCC 4.6 warning with 64-bit builds. u_debug_stack.c: In function ‘debug_backtrace_capture’: u_debug_stack.c:45:17: warning: variable ‘frame_pointer’ set but not used [-Wunused-but-set-variable] Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: José Fonseca <[email protected]>