aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri
Commit message (Collapse)AuthorAgeFilesLines
* dri/nv04: Add support for NV_texture_env_combine4.Francisco Jerez2010-09-092-13/+24
|
* dri/nouveau: Minor cleanup.Francisco Jerez2010-09-091-21/+29
|
* r600: add TXL instruction and note about TXBAndre Maasikas2010-09-091-5/+12
|
* r600: remove depth exports move, just set to output x <- z in the export ↵Andre Maasikas2010-09-091-70/+5
| | | | intruction
* r600: protect cleanup instructions from double freeAndre Maasikas2010-09-092-2/+20
| | | | | We might get the cleanup when we have not translated the shader yet e.g 2 programstringnotifys in a row
* r600: remove mask from output intructionsAndre Maasikas2010-09-096-45/+1
| | | | | in case of relative addressing we never get to know which comps were really written.
* r600: allow relative addressing of temps, inputs, outputsAndre Maasikas2010-09-091-13/+30
|
* r600: handle LIT writemaskAndre Maasikas2010-09-091-147/+141
|
* r600: fix rsq from negative inputAndre Maasikas2010-09-091-0/+3
| | | | arbfp specifies rsq of abs value
* glsl: add several EmitNo* options, and MaxUnrollIterationsLuca Barbieri2010-09-081-1/+1
| | | | | | | | | This increases the chance that GLSL programs will actually work. Note that continues and returns are not yet lowered, so linking will just fail if not supported. Signed-off-by: Ian Romanick <[email protected]>
* glsl: make compiler options per-targetLuca Barbieri2010-09-083-5/+16
| | | | | | | This allows us to specify different options, especially useful for chips without unified shaders. Signed-off-by: Ian Romanick <[email protected]>
* dri: Unset current context and dispatch table when unbindingKristian Høgsberg2010-09-084-0/+13
| | | | | | | | Otherwise, when we switch to an indirect glx context and then back, it looks like we're still current. https://bugs.freedesktop.org/show_bug.cgi?id=29977#c7 Signed-off-by: Kristian Høgsberg <[email protected]>
* i965: Enable EXT_framebuffer_blit internally.Kenneth Graunke2010-09-071-0/+1
| | | | | | Otherwise, ES2's BindFramebuffer entrypoint hits this assertion: main/fbobject.c:1323: _mesa_BindFramebufferEXT: Assertion `ctx->Extensions.EXT_framebuffer_blit' failed.
* i965: Store the byte address in the VS constant buffer as an integer.Eric Anholt2010-09-071-1/+1
| | | | | | | We carefully multiplied our two ints (since we want to be precise after all) then stored them in a float, which is not specced to really work, in addition to wasting precision. Fixes vp-arl-constant-array-huge-* things since the assertions were added.
* i965: Make pixel_xy results UW.Eric Anholt2010-09-071-0/+2
| | | | | | | There is a restriction on the destination of an operation involving a vector immediate being 128-bit aligned and the destination horizontal stride being equivalent to 2 bytes. Fixes bad pixel_x results from gl_FragCoord, where each pair had the same value.
* i965: Don't bother with RNDZ for f2i.Eric Anholt2010-09-071-1/+1
| | | | | The default type conversion for MOV should be fine, and RNDZ actually requires two instructions.
* i965: Add some validation on BRW_OPCODE_MUL and ADD's arguments.Eric Anholt2010-09-071-2/+57
| | | | | Now that we're playing with other types in brw_fs.cpp, it's easy to trip over issues like these.
* i965: Add assertion for another requirement about types.Eric Anholt2010-09-071-1/+13
| | | | This catches a failure in the FS backend.
* i965: Align the start of attribute interp coefficients in FS to use PLN.Eric Anholt2010-09-071-0/+8
|
* i965: Just assert when we flagged a compile error in the FS for now.Eric Anholt2010-09-071-3/+5
| | | | | | Dumping back to potentially 16-wide dispatch doesn't really work out at the moment, and hopefully I'll just be able to resolve all the failures so we never have to do this at all.
* i965: Clean up fs_reg setup by using a helper for constructors.Eric Anholt2010-09-071-27/+16
|
* i965: When using the new FS backend, don't validate the Mesa IR version.Eric Anholt2010-09-071-0/+16
|
* i965: Add a bit of validation for some ISA restrictions in the docs.Eric Anholt2010-09-071-0/+70
|
* i965: set the source width/stride when handling reladdr dests in the VS.Eric Anholt2010-09-071-0/+6
| | | | | This is a requirement specified in the docs. No behavior change in glsl-vs-varying-array.shader_test that violated these requirements.
* dri: Make it a little clearer that we're not dereferencing a NULL pointernobled2010-09-071-1/+2
|
* dri: Use the right type for the API tokennobled2010-09-071-1/+3
| | | | | Pass mesa_api to CreateContext, and abort early if the requested API isn't recognized.
* nouveau: restore nouveau_class.h for nv04-nv20Luca Barbieri2010-09-071-1/+4953
| | | | | Sorry, I deleted the Gallium copy without realizing that the DRI one was just a symlink to it.
* radeon: Add radeon_buffer_objects.c.Henri Verbeet2010-09-051-0/+1
|
* r200: Add radeon_buffer_objects.c.Henri Verbeet2010-09-053-0/+3
|
* radeon: Make do_blit_readpixels() into a PBO work.Henri Verbeet2010-09-051-11/+31
|
* r300g,r300c: memset the compiler struct to zerosMarek Olšák2010-09-053-0/+3
| | | | This should fix bogus reports "Too many temporaries." and maybe some others.
* r300/compiler: Remove stray break statementTom Stellard2010-09-041-1/+0
| | | | This fixes glsl-fs-loop-nested.
* r300/compiler: fix the instruction limit in vertex shadersMarek Olšák2010-09-051-1/+1
| | | | | | Broken with commit d774b0c710bb7d833d17bd12f5151a0176baad96. Reported by Chris Rankin.
* r300/compiler: indent printed instructions according to the branch depthMarek Olšák2010-09-041-4/+44
|
* r300/compiler: use limits from the compiler input instead of inline constantsMarek Olšák2010-09-041-5/+4
|
* r300/compiler: improve register allocation with indexable temporaries for VSMarek Olšák2010-09-041-17/+46
| | | | | Register allocation can now reallocate temporaries right after the last indexed source operand, instead of being disabled for the whole shader.
* r300/compiler: fix handling of indexed temporaries in peepholeMarek Olšák2010-09-041-1/+9
|
* r300/compiler: disable deadcode elimination for indexed dst operandsMarek Olšák2010-09-041-0/+14
|
* r300/compiler: allocate at least FS inputs if register allocation is disabledMarek Olšák2010-09-043-9/+52
|
* r300g: add a new debug option which disables compiler optimizationsMarek Olšák2010-09-046-6/+13
| | | | | | | | | | | | Those are: - dead-code elimination - constant folding - peephole (mainly copy propagation) - register allocation There are some bugs which I need to track down. Also fix up the descriptions of all the debug options.
* r300/compiler: compute the final number of temporaries during translationMarek Olšák2010-09-041-7/+23
| | | | | And not during the register allocation, which may be skipped for debugging purposes. Also the predicate register is now added to the number of temps.
* r300/compiler: make optimizations not use 0.5 swizzles in vertex shadersMarek Olšák2010-09-045-1/+6
|
* r300/compiler: use peephole and constant folding for vertex shaders tooMarek Olšák2010-09-041-1/+3
|
* r300/compiler: remove unused enum OPCODE_REPL_ALPHAMarek Olšák2010-09-041-5/+0
| | | | We use RC_OPCODE_REPL_ALPHA instead.
* r300/compiler: refactor fragment shader compilationMarek Olšák2010-09-0419-165/+85
| | | | This cleans up the mess in r3xx_compile_fragment_program.
* r300/compiler: add new compiler parameter max_constantsMarek Olšák2010-09-046-10/+16
|
* r300/compiler: refactor vertex shader compilationMarek Olšák2010-09-0418-161/+140
| | | | | | First list compiler passes in an array, then run the new function rc_run_compiler. Every backend may need a different set of passes. This cleans up the mess in r3xx_compile_vertex_program.
* r300/compiler: remove a redundant parameter in rc_pair_regallocMarek Olšák2010-09-043-3/+4
|
* r300/compiler: remove a redundant parameter in rc_dataflow_deadcodeMarek Olšák2010-09-044-5/+5
| | | | &c->Base == c.
* r300/compiler: use null-terminated array of transformation functionsMarek Olšák2010-09-044-15/+20
| | | | | I need to reduce the number of parameters of each compiler pass function. This is part of a larger cleanup.