summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* softpipe: enable clamping controlDave Airlie2012-01-112-3/+8
| | | | | | | | This enables fragment clamping in softpipe, it passes more tests than it did previously with no regressions, There are still a couple of failures in the SNORM types to investigate. Signed-off-by: Dave Airlie <[email protected]>
* softpipe: fix texel fetch swizzlesDave Airlie2012-01-111-26/+43
| | | | | | | This fixes a number of texelFetch swizzle tests, and consoldiates the swizzle handling in a new function. Signed-off-by: Dave Airlie <[email protected]>
* i915g: Fix bugs in the shader optimizer.Stéphane Marchesin2012-01-111-46/+80
|
* softpipe: fix llvm buildDave Airlie2012-01-113-3/+3
| | | | | | Thanks to Wubbbi on #dri-devel for pointing it out. Signed-off-by: Dave Airlie <[email protected]>
* draw: clipdistance support (v2)Dave Airlie2012-01-117-17/+79
| | | | | | | | | | Add support for using the clipdistance instead of clip plane. Passes all piglit clipdistance tests. v2: fixup some comments from Brian in review. Signed-off-by: Dave Airlie <[email protected]>
* tgsi_scan: add support to count number of output clip distancesDave Airlie2012-01-112-0/+5
| | | | | | Just add support to the scanner to count the number of clip distances. Signed-off-by: Dave Airlie <[email protected]>
* draw/softpipe: add clip vertex support. (v2)Dave Airlie2012-01-119-18/+58
| | | | | | | | | | | | | | | | softpipe always clipped using the position vector, however for unclipped vertices it stored the position in window coordinates, however when position and clipping are separated, we need to store the clip-space position and the clip-space vertex clip, so we can interpolate both separately. This means we have to take the clip space position and store it to use later. This allows softpipe to pass all the clip-vertex piglit tests. v2: fix llvm draw regression, the structure being passed into llvm needed updating, remove some hardcoded ints that should have been enums while there. Signed-off-by: Dave Airlie <[email protected]>
* tgsi/softpipe: add VertexID support.Dave Airlie2012-01-113-6/+19
| | | | | | | | | | This required changing the system value semantics, so we stored a system value per vertex, instance id is the only other system value we currently support, so I span it across the channels. This passes the 3 vertexid-* piglit tests + lots of instanceid tests. Signed-off-by: Dave Airlie <[email protected]>
* softpipe: allow softpipe to set shader params depending on runtime llvm (v3)Dave Airlie2012-01-113-9/+18
| | | | | | | | | | | | | If draw isn't using llvm we can support vertex texture and integers, These will be fixed up later, but for now allow this check to happen at run-time. v2: since 3e22c7a25321554a32fa6254485912fd53deff3a we can ask draw for a non-llvm context. Just track if ask and set the vars accordingly. This probably isn't perfect but should cover the cases we care about. v3: use debug option, restructure to store in screen, as suggested by Jakob. Signed-off-by: Dave Airlie <[email protected]>
* nv50: fix clip state validationChristoph Bumiller2012-01-101-3/+4
| | | | | | | | | | | | Don't create clip outputs if no clip planes are enabled. Move clip validation after program validation: we were calling linkage validation in case the VP needed rebuilding before the FP was validated. The vertex program needs to be built first because when ClipDistance is used we'll want to only enable those outputs that are also written.
* draw: remove unused 'so' variable in draw_pt_so_emit()Brian Paul2012-01-101-2/+0
|
* util: use memset() to initialize surface, sampler_view templatesBrian Paul2012-01-102-7/+16
| | | | | | | | | | | | These initialization functions weren't initializing all the fields so some had undefined values. The callers of these functions sometimes use a structure assignment to initialize new objects from these templates so we'd just propagate the undefined values. That made for some confusing info when debugging, plus it could lead to bugs. v2: fix surf pointer mix-up: "&surf" -> "surf" Jakob Bornecrantz <[email protected]>
* svga: Drop execbuf throttlingJakob Bornecrantz2012-01-105-36/+1
| | | | | | | | This code isn't used anymore in preference for DRI2 client side swap buffers throttling or throttling done inside the xa or xorg driver. Signed-off-by: Jakob Bornecrantz <[email protected]> Reviewed-by Brian Paul <[email protected]>
* svga: Add somewhat sensible fallback and silence warningJakob Bornecrantz2012-01-101-3/+2
| | | | | Signed-off-by: Jakob Bornecrantz <[email protected]> Reviewed-by Brian Paul <[email protected]>
* svga: Silence warningJakob Bornecrantz2012-01-101-7/+0
| | | | | Signed-off-by: Jakob Bornecrantz <[email protected]> Reviewed-by Brian Paul <[email protected]>
* svga: Silence warningJakob Bornecrantz2012-01-101-0/+3
| | | | | Signed-off-by: Jakob Bornecrantz <[email protected]> Reviewed-by Brian Paul <[email protected]>
* svga: Silence warningJakob Bornecrantz2012-01-101-0/+1
| | | | | Signed-off-by: Jakob Bornecrantz <[email protected]> Reviewed-by Brian Paul <[email protected]>
* svga: IgnoresJakob Bornecrantz2012-01-101-0/+2
| | | | | Signed-off-by: Jakob Bornecrantz <[email protected]> Reviewed-by Brian Paul <[email protected]>
* draw: Silence warningJakob Bornecrantz2012-01-101-12/+0
| | | | | | | | This peice of code has been here since the inital commit (c5c5cd71) and the code that used instance_id_index was removed in (caede752) by José. Signed-off-by: Jakob Bornecrantz <[email protected]> Reviewed-by Brian Paul <[email protected]>
* target-helpers: If neither softpipe or llvmpipe is used just return the screenJakob Bornecrantz2012-01-101-0/+2
| | | | | | | So the targets can drop the sw_wrapper winsys when no sw driver is being used. Signed-off-by: Jakob Bornecrantz <[email protected]> Reviewed-by Brian Paul <[email protected]>
* draw/softpipe: EXT_transform_feedback support (v2)Dave Airlie2012-01-1015-217/+185
| | | | | | | | | | | This replaces the current code with an implementation compatible with the new gallium interface. I've left some of the remains of the interface intact so llvmpipe keeps building correctly, and I'll take a look at fixing llvmpipe up later. v2: fixup as per Brian's review Signed-off-by: Dave Airlie <[email protected]>
* gallium: introduce GLSL based interpolation rules. (v2)Dave Airlie2012-01-106-5/+18
| | | | | | | | | | | | This introduces an unspecified interpolation paramter that is only allowed for color semantics, so a specified GLSL interpolation will override the ShadeModel specified interpolation, but not vice-versa. This fixes a lot of the interpolation tests in piglit. v2: rename from unspecified to color Signed-off-by: Dave Airlie <[email protected]>
* nvc0: fix FP header clip distance maskChristoph Bumiller2012-01-101-5/+5
|
* nvc0/ir: TXF array index already is an integerChristoph Bumiller2012-01-101-3/+6
|
* nv50/ir: handle TGSI_SEMANTIC_VERTEXIDChristoph Bumiller2012-01-104-8/+8
|
* nv50/ir/tgsi: translate SNE as unordered comparisonChristoph Bumiller2012-01-101-0/+1
| | | | Fixes isnan().
* nv50/ir/ra: don't coalesce contraint-movesChristoph Bumiller2012-01-101-0/+4
| | | | | | | | This could lead to incorrect code when fixed regs are involved. Surprisingly, the increased freedom actually leads to lower register usage in some cases. Still want to find a better way to treat constraints though ...
* nvc0: enable shader watchdog timerChristoph Bumiller2012-01-102-0/+8
| | | | Prevent infinite loops in shaders from locking up the GPU.
* nv50/ir/tgsi: handle TGSI_OPCODE_IABSChristoph Bumiller2012-01-101-0/+3
|
* nv50/ir/opt: optimize u32 MOD by power of 2 into ANDChristoph Bumiller2012-01-101-0/+8
|
* nv50/ir/opt: s/SHL/SHR in optimization of u32 DIVChristoph Bumiller2012-01-101-1/+1
|
* nv50/ir,nvc0: make ClipDistance and ClipVertex workChristoph Bumiller2012-01-106-24/+54
|
* nv50,nvc0: handle new PIPE_CAPsChristoph Bumiller2012-01-102-0/+15
|
* nvc0/ir/emit: fix modifiers of f32 add with long immediateChristoph Bumiller2012-01-101-5/+11
|
* nvc0/ir: fix default insertion position in pre-SSA lowering passChristoph Bumiller2012-01-101-7/+1
| | | | | | Always set position to insert before the current instruction, the previous behaviour led to confusion (bug in checkPredicate for BBs with only a single conditional branch).
* Squash-merge branch 'gallium-clip-state'Marek Olšák2012-01-1072-299/+313
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gallium/auxiliary/tgsi/tgsi_strings.c src/mesa/state_tracker/st_atom_clip.c commit d919791f2742e913173d6b335128e7d4c63c0840 Author: Christoph Bumiller <[email protected]> Date: Fri Jan 6 17:59:22 2012 +0100 d3d1x: adapt to new clip state commit cfec82bca3fefcdefafca3f4555285ec1d1ae421 Author: Christoph Bumiller <[email protected]> Date: Fri Jan 6 14:16:51 2012 +0100 gallium/docs: update for clip state changes commit c02bfeb81ad9f62041a2285ea6373bbbd602912a Author: Christoph Bumiller <[email protected]> Date: Fri Jan 6 14:21:43 2012 +0100 tgsi: add TGSI_PROPERTY_PROHIBIT_UCPS commit d4e0a785a6a23ad2f6819fd72e236acb9750028d Author: Brian Paul <[email protected]> Date: Thu Jan 5 08:30:00 2012 -0700 tgsi: consolidate TGSI string arrays in new tgsi_strings.h There was some duplication between the tgsi_dump.c and tgsi_text.c files. Also use some static assertions to help catch errors when adding new TGSI values. v2: put strings in tgsi_strings.c file instead of the .h file. Reviewed-by: Dave Airlie <[email protected]> commit c28584ce0d8c62bd92c8f140729d344f88a0b3cd Author: Christoph Bumiller <[email protected]> Date: Fri Jan 6 12:48:09 2012 +0100 gallium: extend user_clip_plane_enable to apply to clip distances commit f1d5016c07f786229ed057effbe55fbfd160b019 Author: Marek Olšák <[email protected]> Date: Fri Jan 6 02:39:09 2012 +0100 nvfx: adapt to new clip state commit 6f6fa1c26bd19f797c1996731708e3569c9bfe24 Author: Marek Olšák <[email protected]> Date: Fri Jan 6 01:41:39 2012 +0100 st/mesa: fix DrawPixels with GL_DEPTH_CLAMP commit c86ad730aa1c017788ae88a55f54071bf222be12 Author: Christoph Bumiller <[email protected]> Date: Tue Jan 3 23:51:30 2012 +0100 nv50: adapt to new clip state commit 3a8ae6ac243bae5970729dc4057fe02d992543dc Author: Christoph Bumiller <[email protected]> Date: Tue Jan 3 23:32:36 2012 +0100 nvc0: adapt to new clip state commit 6243a8246997f8d2fcc69ab741a2c2dea080ff11 Author: Marek Olšák <[email protected]> Date: Thu Dec 29 01:32:51 2011 +0100 draw: initalize pt.user.planes in draw_init This fixes a crash in glean/fpexceptions. commit e3056524b19b56d473f4faff84ffa0eb41497408 Author: Marek Olšák <[email protected]> Date: Mon Dec 26 06:26:55 2011 +0100 svga: adapt to new clip state commit c5bfa8b37d6d489271df457229081d6bbb51b4b7 Author: Marek Olšák <[email protected]> Date: Sun Dec 25 14:11:51 2011 +0100 r600g: adapt to new clip state commit f11890905362f62627c4a28a8255b76eb7de7df2 Author: Marek Olšák <[email protected]> Date: Sun Dec 25 14:10:26 2011 +0100 r300g: adapt to new clip state commit e37465327c79a01112f15f6278d9accc5bf3103f Author: Marek Olšák <[email protected]> Date: Sun Dec 25 12:39:16 2011 +0100 draw: adapt to new clip state This adds a regression in the LLVM clipping path. Can anybody see anything wrong with the code? It works for every other case, just glean/fpexceptions crashes when doing the "Infinite clip plane test". commit b474d2b18c72d965eefae4e427c269cba5ce6ba2 Author: Marek Olšák <[email protected]> Date: Sun Dec 25 13:14:59 2011 +0100 u_blitter: don't save/set/restore clip state commit 9dd240ea91f523a677af45e8d0adb9e661e28602 Author: Marek Olšák <[email protected]> Date: Sun Dec 25 13:11:56 2011 +0100 gallium: don't cso_save/set/restore clip state The enable bits are in the rasterizer state. commit a4f7031179f5f4ad524b34b394214b984ac950f6 Author: Marek Olšák <[email protected]> Date: Sun Dec 25 12:58:55 2011 +0100 gallium: default depth_clip to 1 depth_clip = !depth_clamp commit fe21147a00ab90e549d63fe12ee4625c9c2ffcc3 Author: Marek Olšák <[email protected]> Date: Mon Dec 26 06:14:19 2011 +0100 trace,util: update state logging to new clip state Also dump the other missing flags. commit 2a3b96e84ac872dcc5bc1de049fe76bb58d64b23 Author: Marek Olšák <[email protected]> Date: Sun Dec 25 10:43:43 2011 +0100 st/mesa: adapt to new clip state commit b7b656a42fca19d7c85267f42649a206a85a2c72 Author: Marek Olšák <[email protected]> Date: Sat Dec 17 15:45:19 2011 +0100 gallium: move state enable bits from clip_state to rasterizer_state
* softpipe: Don't use llvm in drawJakob Bornecrantz2012-01-091-1/+4
| | | | | | | But add a option to force it on for testing. Signed-off-by: Jakob Bornecrantz <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* draw: Fail if we fail to enable llvm when asked for itJakob Bornecrantz2012-01-091-5/+11
| | | | | | | | The r300 driver requires LLVM when building and other drivers that depend on it for all TNL, like i915g will be a lot slower without it. Signed-off-by: Jakob Bornecrantz <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* draw: Make it possible to create a llvm free contextJakob Bornecrantz2012-01-092-15/+35
| | | | | Signed-off-by: Jakob Bornecrantz <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* radeon/winsys: fix get info ioctl error checkingJerome Glisse2012-01-091-3/+5
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* vl: replace decode_buffers with auxiliary data fieldChristian König2012-01-0919-158/+146
| | | | | | | Based on patches from Maarten Lankhorst <[email protected]> Signed-off-by: Christian König <[email protected]> Acked-by: Maarten Lankhorst <[email protected]>
* nvfx: remove unused-but-set variablesMarek Olšák2012-01-082-5/+0
|
* gallium: add an IABS opcode to TGSIBryan Cain2012-01-074-1/+20
| | | | | | This is a necessary operation that is missing from TGSI. Reviewed-by: Brian Paul <[email protected]>
* util: silence some MSVC type conversion warningsBrian Paul2012-01-071-5/+5
|
* draw: replace assert(0) with debug_warn_once()Brian Paul2012-01-073-6/+6
| | | | | | If the assertion was hit, it probably meant that we were unable to allocate or map a vertex buffer. Instead of dying in a debug build, issue a warning and continue.
* util: add debug_warn_once() macroBrian Paul2012-01-071-0/+19
| | | | Emits a warning message, but only once to avoid tons of repeated warnings.
* draw: whitespace fixes, etc.Brian Paul2012-01-074-173/+160
|
* gallium: make vbuf_render::set_primitive() return voidBrian Paul2012-01-079-52/+27
| | | | All the implementations of this function always return TRUE.
* svga: fix assorted whitespace issues, add copyright commentBrian Paul2012-01-073-78/+85
|
* svga: add switch cases for PIPE_SHADER_CAP_OUTPUT_READBrian Paul2012-01-071-0/+4
| | | | | Silences unhandled switch case warning. Return 0 since we don't want to read from output regs.