summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* glsl: Add implementation of inverse() for mat2/3/4.Eric Anholt2012-04-243-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 Anholt2012-04-241-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 Anholt2012-04-241-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 Anholt2012-04-241-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 Anholt2012-04-241-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 Anholt2012-04-241-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 capsChristoph Bumiller2012-04-243-0/+13
|
* nv50,nvc0: don't initialize the draw module, we don't use itChristoph Bumiller2012-04-246-4/+26
| | | | But some day we might (e.g. for blending 16 bpp formats on nv50).
* nv50: enable shader watchdog timerChristoph Bumiller2012-04-241-0/+5
|
* darwin: Eliminate a pthread mutex leakJeremy Huddleston2012-04-241-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 changesMarek Olšák2012-04-2411-98/+100
|
* u_vbuf: don't call u_vbuf_upload_buffers if there's nothing to uploadMarek Olšák2012-04-241-2/+8
|
* u_vbuf: don't upload user buffers if the driver supports themMarek Olšák2012-04-241-1/+1
|
* u_vbuf: optimize u_vbuf_translate_find_free_vb_slotsMarek Olšák2012-04-241-27/+15
|
* u_vbuf: turn bool arrays into bitmasks and loops into bitwise operationsMarek Olšák2012-04-241-110/+88
| | | | | | Optimized functions: - u_vbuf_need_minmax_index - u_vbuf_mapping_vertex_buffer_blocks
* u_vbuf: take advantage of all new vertex fetch capsMarek Olšák2012-04-243-10/+19
|
* u_vbuf: simplify u_vbuf_set_vertex_buffersMarek Olšák2012-04-241-23/+16
|
* u_vbuf: rename native_attribs -> driver_attribsMarek Olšák2012-04-241-5/+5
|
* r600g: move updating vertex buffer state into set_vertex_buffersMarek Olšák2012-04-242-11/+7
|
* st/mesa: always expose ARB_ES2_compatibilityMarek Olšák2012-04-241-3/+1
| | | | u_vbuf translates GL_FIXED too if needed.
* st/mesa: always expose ARB_half_float_vertexMarek Olšák2012-04-241-3/+1
| | | | u_vbuf kicks in and translates it to float if it's unsupported.
* gallium: make user vertex buffers optionalMarek Olšák2012-04-2416-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 supportedMarek Olšák2012-04-241-1/+3
| | | | So that u_vbuf isn't enabled.
* r600g: don't share u_upload_mgr with u_vbuf, create its ownMarek Olšák2012-04-244-4/+15
|
* r300g: don't share u_upload_mgr with u_vbuf, create its ownMarek Olšák2012-04-244-4/+10
|
* u_vbuf: pull u_vbuf_draw_max_vertex_count into r300gMarek Olšák2012-04-243-52/+50
|
* u_vbuf: make use of the new CAPs to determine what to doMarek Olšák2012-04-245-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 supportedMarek Olšák2012-04-247-0/+12
|
* gallium: add CAPs for vertex fetcherMarek Olšák2012-04-241-1/+5
| | | | | Supported vertex formats will be queried using is_format_supported(.., PIPE_BIND_VERTEX_BUFFER, ..).
* u_vbuf: remove u_vbuf_resourceMarek Olšák2012-04-2420-181/+165
|
* u_vbuf: use user_ptr from pipe_resourceMarek Olšák2012-04-242-11/+12
|
* gallium: add user_ptr in pipe_resourceMarek Olšák2012-04-2410-0/+14
| | | | I need to access the pointer in st/mesa when I only have pipe_resource.
* u_vbuf: override draw_vboMarek Olšák2012-04-244-32/+33
|
* u_vbuf: override create/bind/destroy_vertex_elements_stateMarek Olšák2012-04-248-82/+54
|
* u_vbuf: override set_vertex_buffersMarek Olšák2012-04-2412-88/+86
|
* u_vbuf: override set_index_bufferMarek Olšák2012-04-247-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_vboMarek Olšák2012-04-241-7/+9
| | | | Reviewed-by: Brian Paul <[email protected]>
* gallium/util: use cso_draw_arrays in util_draw_vertex_bufferMarek Olšák2012-04-241-5/+4
| | | | Reviewed-by: Brian Paul <[email protected]>
* cso: add set_index_buffer and draw_vbo passthrough functionsMarek Olšák2012-04-242-0/+48
| | | | | | v2: use util_draw_init_info Reviewed-by: Brian Paul <[email protected]>
* apple: Fix a use after freeJonas Maebe2012-04-231-2/+4
| | | | Reviewed-by: Jeremy Huddleston <[email protected]>
* vbo: call UpdateState directly when notifying a driver about _NEW_ARRAYMarek Olšák2012-04-234-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 stateMarek Olšák2012-04-231-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_FLAGSMarek Olšák2012-04-231-0/+2
| | | | Reviewed-by: Tom Stellard <[email protected]>
* r600g/automake: add $ARCH_FLAGS and $OPT_FLAGSMarek Olšák2012-04-231-0/+2
| | | | Reviewed-by: Tom Stellard <[email protected]>
* r600g: init vars to silence warningsBrian Paul2012-04-231-2/+2
|
* st/mesa: no-op glCopyPixels if source region is out of boundsBrian Paul2012-04-231-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 errorTom Stellard2012-04-231-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 SITom Stellard2012-04-235-33/+22
|
* r600g/llvm: Let ISel handle lowering to {INSERT,EXTRACT}_SUBREGTom Stellard2012-04-236-88/+37
|
* r600g/llvm: Only emit an instruction's explicit operandsTom Stellard2012-04-231-2/+2
|