Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | nvc0: optimize blend cso by checking which by-RT data actually differs | Christoph Bumiller | 2012-05-29 | 1 | -65/+94 |
| | | | | Can save about 200 bytes of command buffer space. | ||||
* | nvc0: don't upload UCPs if the shader doesn't use them | Christoph Bumiller | 2012-05-29 | 1 | -1/+1 |
| | |||||
* | nvc0/ir: allow 64-bit constant loads on nve4 | Christoph Bumiller | 2012-05-29 | 1 | -1/+1 |
| | | | | Looks like only 128-bit access doesn't work. | ||||
* | nvc0/ir: fix texture barrier insertion to prevent WAW hazards | Christoph Bumiller | 2012-05-29 | 2 | -21/+78 |
| | | | | Fixes, for instance, object highlighting in Diablo 3 (wine). | ||||
* | nvc0: don't set NEW_IDXBUF in nvc0_switch_pipe_context if none is bound | Christoph Bumiller | 2012-05-22 | 1 | -0/+2 |
| | |||||
* | nouveau: place static buffers in VRAM if preferred by the driver | Christoph Bumiller | 2012-05-17 | 1 | -2/+5 |
| | |||||
* | nv50/ir: fix reversed order of lane ops in quadops | Christoph Bumiller | 2012-05-17 | 1 | -2/+3 |
| | |||||
* | nv50,nvc0: handle user vertex buffers | Christoph Bumiller | 2012-05-17 | 6 | -160/+257 |
| | | | | And restructure VBO validation a little in the process. | ||||
* | nv50,nvc0: handle user index buffers | Christoph Bumiller | 2012-05-17 | 4 | -24/+24 |
| | |||||
* | nv50,nvc0: handle user constbufs without wrapping them in a resource | Christoph Bumiller | 2012-05-17 | 7 | -82/+91 |
| | |||||
* | gallium: remove user_buffer_create from the interface | Marek Olšák | 2012-05-12 | 1 | -1/+0 |
| | | | | Nothing uses it now. | ||||
* | Merge branch 'gallium-userbuf' | Marek Olšák | 2012-05-11 | 2 | -4/+17 |
|\ | | | | | | | | | | | | | | | Conflicts: src/gallium/docs/source/screen.rst src/gallium/drivers/nv50/nv50_state.c src/gallium/include/pipe/p_defines.h src/mesa/state_tracker/st_draw.c | ||||
| * | gallium: add void *user_buffer to pipe_constant_buffer | Marek Olšák | 2012-04-30 | 1 | -0/+10 |
| | | | | | | | | This reduces CPU overhead when updating constants. | ||||
| * | gallium: add void *user_buffer in pipe_index_buffer | Marek Olšák | 2012-04-30 | 1 | -1/+1 |
| | | | | | | | | | | | | | | Adapted drivers: i915, llvmpipe, r300, r600, radeonsi, softpipe. User index buffers have been disabled in nv30, nv50, nvc0 and svga to keep things working. | ||||
| * | gallium: remove pipe_context::redefine_user_buffer | Marek Olšák | 2012-04-30 | 1 | -2/+0 |
| | | |||||
| * | gallium: add void *user_buffer in pipe_vertex_buffer | Marek Olšák | 2012-04-30 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | | | | | | This reduces CPU overhead in st_draw_vbo and removes a lot of unnecessary code in that function which was required only to comply with the gallium interface, but wasn't any useful really. Adapted drivers: i915, llvmpipe, r300, softpipe. No changes required in: r600, radeonsi. User vertex buffers have been disabled in nv30, nv50, nvc0 and svga to keep things working. | ||||
| * | gallium: change set_constant_buffer to be UBO-friendly | Marek Olšák | 2012-04-30 | 1 | -1/+2 |
| | | |||||
| * | gallium: add PIPE_CAP_CONSTANT_BUFFER_OFFSET_ALIGNMENT | Marek Olšák | 2012-04-30 | 1 | -0/+2 |
| | | | | | | | | | | | | | | | | This is required for any serious constant buffer support. Constant buffer offsets on ATI and NVIDIA DX10 and DX11 GPUs must be a multiple of 256. In OpenGL, this can be queried via GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT. | ||||
| * | gallium: add PIPE_CAP_USER_INDEX_BUFFERS and PIPE_CAP_USER_CONSTANT_BUFFERS | Marek Olšák | 2012-04-30 | 1 | -0/+2 |
| | | |||||
* | | nvc0/ir: allow abs,neg source modifiers with ceil,floor,trunc | Christoph Bumiller | 2012-05-06 | 1 | -0/+3 |
| | | |||||
* | | nvc0/ir: fix lowering of textureGrad | Christoph Bumiller | 2012-05-06 | 2 | -8/+9 |
|/ | |||||
* | nv50,nvc0: fix depth/stencil resolve | Christoph Bumiller | 2012-04-29 | 1 | -30/+141 |
| | | | | | Cannot sample depth/stencil with a single view, and needed to use different shader code for nve4. | ||||
* | nv50/ir/opt: try to convert ABS(SUB) to SAD | Christoph Bumiller | 2012-04-29 | 2 | -1/+17 |
| | |||||
* | nvc0/ir: try to use the optimal texture op mode | Christoph Bumiller | 2012-04-29 | 1 | -3/+15 |
| | | | | | Don't really know what they are yet but for groups of textures, the last one should use mode "p" and the others "t". | ||||
* | nvc0/ir: initial implementation of nve4 scheduling hints | Christoph Bumiller | 2012-04-29 | 3 | -11/+597 |
| | |||||
* | nvc0/ir: implement better placement of texture barriers | Christoph Bumiller | 2012-04-29 | 1 | -7/+269 |
| | | | | | Put them before first uses instead of right after the texturing instruction and cull unnecessary barriers. | ||||
* | nvc0/ir/emit: fix emitTXQ 2nd src | Christoph Bumiller | 2012-04-29 | 1 | -1/+3 |
| | |||||
* | nvc0/ir/target: integer ADD doesn't support ABS modifier | Christoph Bumiller | 2012-04-29 | 1 | -0/+2 |
| | |||||
* | nv50,nvc0: handle new vertex fetch caps | Christoph Bumiller | 2012-04-24 | 1 | -0/+4 |
| | |||||
* | nv50,nvc0: don't initialize the draw module, we don't use it | Christoph Bumiller | 2012-04-24 | 3 | -2/+13 |
| | | | | But some day we might (e.g. for blending 16 bpp formats on nv50). | ||||
* | gallium drivers: report that user vertex buffers are supported | Marek Olšák | 2012-04-24 | 1 | -0/+2 |
| | |||||
* | nv50,nvc0: prevent multiple flushes when user spins on get_query_result | Christoph Bumiller | 2012-04-19 | 1 | -18/+25 |
| | |||||
* | nvc0: fix nve4 linear copies | Christoph Bumiller | 2012-04-16 | 1 | -1/+2 |
| | |||||
* | nvc0: add initial support for nve4+ (Kepler) chipsets | Christoph Bumiller | 2012-04-15 | 16 | -150/+767 |
| | | | | | | | | | Most things that work on Fermi should work on Kepler too. There are a few performance optimizations left to do, like better placement of texture barriers and adding scheduling data to the shader instructions (without them, a thread group will be masked for 32 cycles after each single instruction issue). | ||||
* | nv50/ir: import nv50 target | Christoph Bumiller | 2012-04-14 | 1 | -1/+1 |
| | |||||
* | nv50/ir: fix off-by-ones in CSE and nvc0 insnCanLoad | Christoph Bumiller | 2012-04-14 | 1 | -1/+1 |
| | |||||
* | nv50/ir: rewrite the register allocator as GCRA, with spilling | Christoph Bumiller | 2012-04-14 | 1 | -4/+2 |
| | | | | | This is more flexible than the linear scan, and we don't need the separate allocation pass for constrained values anymore. | ||||
* | nvc0: fix emission of 3rd src in SET_AND,OR,XOR | Christoph Bumiller | 2012-04-14 | 1 | -0/+3 |
| | |||||
* | nv50/ir: Build a "symbol" table with the binary offsets of each function. | Francisco Jerez | 2012-04-14 | 1 | -0/+2 |
| | |||||
* | nv50/ir: Decouple object cloning logic from the sub-object recursion policy. | Francisco Jerez | 2012-04-14 | 1 | -2/+2 |
| | |||||
* | nv50/ir: make Instruction::src/def container private | Christoph Bumiller | 2012-04-14 | 3 | -165/+171 |
| | |||||
* | nv50/ir/opt: improve post-multiply and check target for support | Christoph Bumiller | 2012-04-14 | 2 | -0/+13 |
| | |||||
* | nv50/ir: add isAccessSupported check for memory access coalescing | Christoph Bumiller | 2012-04-14 | 3 | -1/+12 |
| | |||||
* | nv50,nvc0: fix handling of user vbufs with stride < access size | Christoph Bumiller | 2012-04-14 | 3 | -18/+32 |
| | |||||
* | nvc0: prefix all macro methods with MACRO | Christoph Bumiller | 2012-04-14 | 6 | -35/+36 |
| | | | | Some of them have non-macro counterparts. | ||||
* | nvc0: replace VERTEX_DATA push mode with translate to buffer | Christoph Bumiller | 2012-04-14 | 5 | -57/+748 |
| | | | | | While pushing vertices through the FIFO is relatively fast on nv50, it's horribly slow on nvc0. | ||||
* | nvc0: improve vertex state validation | Christoph Bumiller | 2012-04-14 | 6 | -97/+159 |
| | | | | Now updating vertex attribute format only when necessary. | ||||
* | nvc0: track texture dirty state individually | Christoph Bumiller | 2012-04-14 | 5 | -40/+81 |
| | |||||
* | nv50,nvc0: use new scratch buffers code | Christoph Bumiller | 2012-04-14 | 5 | -53/+33 |
| | |||||
* | nvc0: only force early fragment tests if requested by shader | Christoph Bumiller | 2012-04-14 | 5 | -14/+7 |
| |