summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* glsl2: Refactor testing for whether a deref is of a matrix or arrayIan Romanick2010-09-171-11/+12
|
* glsl: add pass to lower variable array indexing to conditional assignmentsLuca Barbieri2010-09-175-0/+317
| | | | | | | | | | | | | | | | | | | | | | | | | | Currenly GLSL happily generates indirect addressing of any kind of arrays. Unfortunately DirectX 9 GPUs are not guaranteed to support any of them in general. This pass fixes that by lowering such constructs to a binary search on the values, followed at the end by vectorized generation of equality masks, and 4 conditional assignments for each mask generation. Note that this requires the ir_binop_equal change so that we can emit SEQ to generate the boolean masks. Unfortunately, ir_structure_splitting is too dumb to turn the resulting constant array references to individual variables, so this will need to be added too before this pass can actually be effective for temps. Several patches in the glsl2-lower-variable-indexing were squashed into this commit. These patches fix bugs in Luca's original implementation, and the individual patches can be seen in that branch. This was done to aid bisecting in the future. Signed-off-by: Ian Romanick <[email protected]>
* r600g: oops got the use_mem_constant the wrong way around.Dave Airlie2010-09-181-1/+1
| | | | this fixes evergreen gears again.
* r600g: use calloc for ctx bo allocationsDave Airlie2010-09-171-1/+1
| | | | since the reference code relies on these being NULL.
* r600g: fixup map flushing.Dave Airlie2010-09-171-5/+9
| | | | | | long lived maps were getting removed when they shouldn't this tries to avoid that problem by only adding to the flush list on unmap.
* r600g: add upload manager support.Dave Airlie2010-09-176-47/+223
| | | | | | this add support for the upload manager for uploading user vbo/index buffers. this provides a considerable speedup in q3 type games.
* r600g: add winsys bo caching.Dave Airlie2010-09-174-31/+24
| | | | | | | this adds the bo caching layer and uses it for vertex/index/constant bos. ctx needs to take references on hw bos so the flushing works okay, also needs to flush the maps.
* r600g: add support for kernel boDave Airlie2010-09-1710-50/+352
| | | | this moves to using a pb bufmgr instead of kernel bos directly.
* r600g: use malloc bufmgr for constant buffersDave Airlie2010-09-173-1/+9
|
* r600g: move constant buffer creation behind winsys abstraction.Dave Airlie2010-09-1712-55/+65
| | | | this paves the way for moving to pb bufmgrs now.
* libgl-xlib: Remove unused st_api_create_OpenGL.Chia-I Wu2010-09-171-8/+0
| | | | st/egl no longer relies on libGL for OpenGL support.
* targets/egl: Use C++ compiler to link GL/ES state trackers.Chia-I Wu2010-09-171-3/+10
| | | | | Otherwise, applications compiled with C compiler might have trouble using them.
* dri/nv10: Fix the CLAMP texture wrap mode.Francisco Jerez2010-09-171-2/+1
|
* tgsi/sse: fix aos_to_soa() loop to handle num_inputs==0Brian Paul2010-09-161-6/+9
| | | | | | | | | Basically, change the loop from: do {...} while (--num_inputs != 0) into: while (num_inputs != 0) { ... --num_inputs; } Fixes fd.o bug 29987.
* r600g: attempt to abstract kernel bos from pipe driver.Dave Airlie2010-09-1719-199/+272
| | | | | | introduce an abstraction layer between kernel bos and the winsys BOs. this is to allow plugging in pb manager with minimal disruption to pipe driver.
* r600g: hide radeon_ctx inside winsys.Dave Airlie2010-09-178-56/+42
| | | | no need for this info to be exported to pipe driver.
* gallivm: Remove unnecessary header.Vinson Lee2010-09-161-1/+0
|
* gallivm: fix wrong return value in bitwise functionsBrian Paul2010-09-161-3/+3
|
* gallivm: Clamp indirect register indices to file_max.José Fonseca2010-09-161-60/+71
| | | | Prevents crashes with bogus data, or bad shader translation.
* gallivm: Start collecting bitwise arithmetic helpers in a new module.José Fonseca2010-09-168-32/+263
|
* gallivm: Fix address register swizzle.José Fonseca2010-09-161-2/+1
| | | | | | | | | | We're actually doing a double swizzling: indirect_reg->Swizzle[indirect_reg->SwizzleX] instead of simply indirect_reg->SwizzleX
* meta: Don't bind the created texture object in init_temp_texture().Francisco Jerez2010-09-161-1/+0
| | | | | | | | | | | This function is executed outside _mesa_meta_begin/end(), that means that e.g. _mesa_meta_Bitmap() clobbers the texturing state because it changes the currently active texture object. There's no need to bind the new texture when it's created, it's done again later anyway (from setup_drawpix/copypix_texture()). Signed-off-by: Brian Paul <[email protected]>
* mesa: include mfeatures.h in formats.cBrian Paul2010-09-161-0/+1
| | | | | Otherwise, FEATURE_EXT_texture_sRGB was undefined. This is (part of?) the fix for fd.o bug 30177.
* r300g/swtcl: fix CS overrunMarek Olšák2010-09-162-8/+28
| | | | https://bugs.freedesktop.org/show_bug.cgi?id=29901
* dri/nouveau: Cleanup references to the old FBOs on glMakeCurrent().Francisco Jerez2010-09-161-16/+8
|
* dri/nouveau: Don't reemit the BO state in nouveau_state_emit().Francisco Jerez2010-09-162-5/+3
|
* dri/nouveau: Don't request a fake front unnecessarily.Francisco Jerez2010-09-165-17/+32
|
* dri/nouveau: Fix glRenderbufferStorage with DEPTH_COMPONENT as internal format.Francisco Jerez2010-09-161-0/+1
|
* dri/nouveau: Add some more extensions.Francisco Jerez2010-09-163-0/+4
|
* dri/nouveau: Update nouveau_class.h.Francisco Jerez2010-09-161-20/+20
|
* dri/nv04: Fix provoking vertex.Francisco Jerez2010-09-161-2/+2
|
* dri/nv04: Fix maximum texture size.Francisco Jerez2010-09-161-0/+1
|
* dri/nv04: Fix up color mask.Francisco Jerez2010-09-161-1/+5
|
* dri/nv04: Align SIFM transfer dimensions.Francisco Jerez2010-09-161-1/+1
|
* dri/nv04: Mipmapping fixes.Francisco Jerez2010-09-162-15/+21
|
* dri/nv04: Fix PGRAPH_ERRORs when running OA.Francisco Jerez2010-09-161-1/+5
|
* dri/nv04: Enable eng3dm for A8/L8 textures.Andrew Randrianasulu2010-09-161-4/+16
| | | | Signed-off-by: Francisco Jerez <[email protected]>
* dri/nv04: Don't expose ARB_texture_env_combine/dot3.Andrew Randrianasulu2010-09-163-2/+4
| | | | Signed-off-by: Francisco Jerez <[email protected]>
* llvmpipe: add DEBUG_FS to dump variant informationKeith Whitwell2010-09-163-1/+3
|
* llvmpipe: add LP_PERF flag to disable various aspects of rasterizationKeith Whitwell2010-09-168-6/+90
| | | | | | | | Allows disabling various operations (mainly texture-related, but will grow) to try & identify bottlenecks. Unlike LP_DEBUG, this is active even in release builds - which is necessary for performance investigation.
* gallivm: make lp_build_sample_nop publicKeith Whitwell2010-09-162-6/+8
|
* gallivm: move i32_vec_type inside the #ifdefBrian Paul2010-09-161-1/+2
|
* gallivm: fix incorrect vector shuffle datatypeBrian Paul2010-09-161-1/+5
| | | | The permutation vector must always be a vector of int32 values.
* nv50: get shader fixups/relocations into working stateChristoph Bumiller2010-09-164-54/+79
|
* nv50: don't segfault on shaders with 0 instructionsChristoph Bumiller2010-09-161-1/+3
|
* glsl: Don't print blank (function ...) headers for built-ins.Kenneth Graunke2010-09-161-0/+3
| | | | Fixes a regression caused when I added my GLSL ES support.
* glsl: Change from has_builtin_signature to has_user_signature.Kenneth Graunke2010-09-163-5/+5
| | | | | The print visitor needs this, and the only existing user can work with has_user_signature just as well.
* r600g: Use clamped math for RCP and RSQ.Tilman Sauerbeck2010-09-161-2/+14
| | | | | | This is likely only correct for OpenGL and not other state trackers. Signed-off-by: Tilman Sauerbeck <[email protected]>
* r600g: Fixed a bo leak in r600_blit_state_ps_shader().Tilman Sauerbeck2010-09-161-1/+1
| | | | | | We would leak the newly created bo if it cannot be mapped. Signed-off-by: Tilman Sauerbeck <[email protected]>
* st/xlib: Notify the context when the front/back buffers are swapped.Chia-I Wu2010-09-163-4/+21
| | | | | | | | The current context should be notified when the the front/back buffers of the current drawable are swapped. The notification was skipped when xmesa_strict_invalidate is false (the default). This fixes fdo bug #29774.