Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | glsl: Add implementation of inverse() for mat2/3/4. | Eric Anholt | 2012-04-24 | 3 | -1/+111 |
| | | | | | | | | | | | | This is taken from the ogl-math project, with Inverse renamed to adj (since it's not actually the inverse), transposed, and our types plugged in. There are potential CSE opportunities in this code (particularly for hardware with RCP but not DIV), but we should be doing CSE anyway, so don't hand-optimize. Fixes piglit inverse tests. Acked-by: Kenneth Graunke <[email protected]> | ||||
* | glsl: Add support for generating builtin code from GLSL instead of IR. | Eric Anholt | 2012-04-24 | 1 | -4/+16 |
| | | | | | | | | This takes advantage of the builtin compiler to generate IR into a string, the same way we read GLSL for function prototypes for our profiles. Reviewed-by: Kenneth Graunke <[email protected]> | ||||
* | glsl: Make ir_reader parse the "temporary" variable qualifier. | Eric Anholt | 2012-04-24 | 1 | -0/+2 |
| | | | | | | | This lets ir_reader eat the output of builtin_compiler on actual function definitions. Reviewed-by: Kenneth Graunke <[email protected]> | ||||
* | glsl: Add doxygen explaining what main.cpp is for. | Eric Anholt | 2012-04-24 | 1 | -0/+9 |
| | | | | | | | I keep getting lost in the Makefile trying to figure out what to edit to work on builtin_compiler or glsl_compiler. Reviewed-by: Kenneth Graunke <[email protected]> | ||||
* | i965/vs: Fix texelFetchOffset() | Eric Anholt | 2012-04-24 | 1 | -3/+23 |
| | | | | | | It appears that when using 'ld' with the offset bits, address bounds checking happens before the offset is applied, so parts of the drawing in piglit texelFetchOffset() with a negative texcoord go black. | ||||
* | i965/fs: Fix texelFetchOffset() | Eric Anholt | 2012-04-24 | 1 | -6/+21 |
| | | | | | | It appears that when using 'ld' with the offset bits, address bounds checking happens before the offset is applied, so parts of the drawing in piglit texelFetchOffset() with a negative texcoord go black. | ||||
* | nv50,nvc0: handle new vertex fetch caps | Christoph Bumiller | 2012-04-24 | 3 | -0/+13 |
| | |||||
* | nv50,nvc0: don't initialize the draw module, we don't use it | Christoph Bumiller | 2012-04-24 | 6 | -4/+26 |
| | | | | But some day we might (e.g. for blending 16 bpp formats on nv50). | ||||
* | nv50: enable shader watchdog timer | Christoph Bumiller | 2012-04-24 | 1 | -0/+5 |
| | |||||
* | darwin: Eliminate a pthread mutex leak | Jeremy Huddleston | 2012-04-24 | 1 | -0/+7 |
| | | | | | Signed-off-by: Jeremy Huddleston <[email protected]> Tested-by: Charles Davis <[email protected]> | ||||
* | radeonsi: stop using u_vbuf and adapt to gallium interface changes | Marek Olšák | 2012-04-24 | 11 | -98/+100 |
| | |||||
* | u_vbuf: don't call u_vbuf_upload_buffers if there's nothing to upload | Marek Olšák | 2012-04-24 | 1 | -2/+8 |
| | |||||
* | u_vbuf: don't upload user buffers if the driver supports them | Marek Olšák | 2012-04-24 | 1 | -1/+1 |
| | |||||
* | u_vbuf: optimize u_vbuf_translate_find_free_vb_slots | Marek Olšák | 2012-04-24 | 1 | -27/+15 |
| | |||||
* | u_vbuf: turn bool arrays into bitmasks and loops into bitwise operations | Marek Olšák | 2012-04-24 | 1 | -110/+88 |
| | | | | | | Optimized functions: - u_vbuf_need_minmax_index - u_vbuf_mapping_vertex_buffer_blocks | ||||
* | u_vbuf: take advantage of all new vertex fetch caps | Marek Olšák | 2012-04-24 | 3 | -10/+19 |
| | |||||
* | u_vbuf: simplify u_vbuf_set_vertex_buffers | Marek Olšák | 2012-04-24 | 1 | -23/+16 |
| | |||||
* | u_vbuf: rename native_attribs -> driver_attribs | Marek Olšák | 2012-04-24 | 1 | -5/+5 |
| | |||||
* | r600g: move updating vertex buffer state into set_vertex_buffers | Marek Olšák | 2012-04-24 | 2 | -11/+7 |
| | |||||
* | st/mesa: always expose ARB_ES2_compatibility | Marek Olšák | 2012-04-24 | 1 | -3/+1 |
| | | | | u_vbuf translates GL_FIXED too if needed. | ||||
* | st/mesa: always expose ARB_half_float_vertex | Marek Olšák | 2012-04-24 | 1 | -3/+1 |
| | | | | u_vbuf kicks in and translates it to float if it's unsupported. | ||||
* | gallium: make user vertex buffers optional | Marek Olšák | 2012-04-24 | 16 | -243/+277 |
| | | | | | | | | | | | This couldn't be split because it would break bisecting. Summary: * r300g,r600g: stop using u_vbuf * r300g,r600g: also report that the FIXED vertex type is unsupported * u_vbuf: refactor for use in the state tracker * cso: wire up u_vbuf with cso_context * st/mesa: conditionally install u_vbuf | ||||
* | i915g: report that all vertex formats are supported | Marek Olšák | 2012-04-24 | 1 | -1/+3 |
| | | | | So that u_vbuf isn't enabled. | ||||
* | r600g: don't share u_upload_mgr with u_vbuf, create its own | Marek Olšák | 2012-04-24 | 4 | -4/+15 |
| | |||||
* | r300g: don't share u_upload_mgr with u_vbuf, create its own | Marek Olšák | 2012-04-24 | 4 | -4/+10 |
| | |||||
* | u_vbuf: pull u_vbuf_draw_max_vertex_count into r300g | Marek Olšák | 2012-04-24 | 3 | -52/+50 |
| | |||||
* | u_vbuf: make use of the new CAPs to determine what to do | Marek Olšák | 2012-04-24 | 5 | -40/+58 |
| | | | | | | | This adds the ability to initialize u_vbuf_caps before creating u_vbuf itself. It will be useful for determining if u_vbuf should be used or not. Also adapt r300g and r600g. | ||||
* | gallium drivers: report that user vertex buffers are supported | Marek Olšák | 2012-04-24 | 7 | -0/+12 |
| | |||||
* | gallium: add CAPs for vertex fetcher | Marek Olšák | 2012-04-24 | 1 | -1/+5 |
| | | | | | Supported vertex formats will be queried using is_format_supported(.., PIPE_BIND_VERTEX_BUFFER, ..). | ||||
* | u_vbuf: remove u_vbuf_resource | Marek Olšák | 2012-04-24 | 20 | -181/+165 |
| | |||||
* | u_vbuf: use user_ptr from pipe_resource | Marek Olšák | 2012-04-24 | 2 | -11/+12 |
| | |||||
* | gallium: add user_ptr in pipe_resource | Marek Olšák | 2012-04-24 | 10 | -0/+14 |
| | | | | I need to access the pointer in st/mesa when I only have pipe_resource. | ||||
* | u_vbuf: override draw_vbo | Marek Olšák | 2012-04-24 | 4 | -32/+33 |
| | |||||
* | u_vbuf: override create/bind/destroy_vertex_elements_state | Marek Olšák | 2012-04-24 | 8 | -82/+54 |
| | |||||
* | u_vbuf: override set_vertex_buffers | Marek Olšák | 2012-04-24 | 12 | -88/+86 |
| | |||||
* | u_vbuf: override set_index_buffer | Marek Olšák | 2012-04-24 | 7 | -37/+61 |
| | | | | This makes u_vbuf_mgr call the driver instead of the other way around. | ||||
* | st/mesa: use cso_set_index_buffer and cso_draw_vbo | Marek Olšák | 2012-04-24 | 1 | -7/+9 |
| | | | | Reviewed-by: Brian Paul <[email protected]> | ||||
* | gallium/util: use cso_draw_arrays in util_draw_vertex_buffer | Marek Olšák | 2012-04-24 | 1 | -5/+4 |
| | | | | Reviewed-by: Brian Paul <[email protected]> | ||||
* | cso: add set_index_buffer and draw_vbo passthrough functions | Marek Olšák | 2012-04-24 | 2 | -0/+48 |
| | | | | | | v2: use util_draw_init_info Reviewed-by: Brian Paul <[email protected]> | ||||
* | apple: Fix a use after free | Jonas Maebe | 2012-04-23 | 1 | -2/+4 |
| | | | | Reviewed-by: Jeremy Huddleston <[email protected]> | ||||
* | vbo: call UpdateState directly when notifying a driver about _NEW_ARRAY | Marek Olšák | 2012-04-23 | 4 | -14/+5 |
| | | | | | | | | Core Mesa doesn't need to know about this. This also removes the hack in recalculate_input_bindings. Reviewed-by: Brian Paul <[email protected]> | ||||
* | vbo: do FLUSH_CURRENT before validating and updating state | Marek Olšák | 2012-04-23 | 1 | -10/+16 |
| | | | | | | | | | | This fixes an assertion failure since: commit 81afdd20f3f574ce29559d8ad77df5c77652009e vbo: don't check twice whether it's valid to render FLUSH_CURRENT may set _NEW_CURRENT_ATTRIB. Reviewed-by: Brian Paul <[email protected]> | ||||
* | r300g/automake: add $ARCH_FLAGS and $OPT_FLAGS | Marek Olšák | 2012-04-23 | 1 | -0/+2 |
| | | | | Reviewed-by: Tom Stellard <[email protected]> | ||||
* | r600g/automake: add $ARCH_FLAGS and $OPT_FLAGS | Marek Olšák | 2012-04-23 | 1 | -0/+2 |
| | | | | Reviewed-by: Tom Stellard <[email protected]> | ||||
* | r600g: init vars to silence warnings | Brian Paul | 2012-04-23 | 1 | -2/+2 |
| | |||||
* | st/mesa: no-op glCopyPixels if source region is out of bounds | Brian Paul | 2012-04-23 | 1 | -1/+9 |
| | | | | | | | | | If the source region for a glCopyPixels is completely outside the source buffer bounds, no-op the copy. Fixes a failed assertion. NOTE: This is a candidate for the 8.0 branch. Reviewed-by: Jose Fonseca <[email protected]> | ||||
* | radeon/llvm: Don't print an error message when there is no error | Tom Stellard | 2012-04-23 | 1 | -2/+1 |
| | | | | | A blank line with an empty error message was being printed even when the target lookup succeeded. | ||||
* | radeon/llvm: Lower VCREATE_v4f32 for R600 and SI | Tom Stellard | 2012-04-23 | 5 | -33/+22 |
| | |||||
* | r600g/llvm: Let ISel handle lowering to {INSERT,EXTRACT}_SUBREG | Tom Stellard | 2012-04-23 | 6 | -88/+37 |
| | |||||
* | r600g/llvm: Only emit an instruction's explicit operands | Tom Stellard | 2012-04-23 | 1 | -2/+2 |
| |