summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* llvmpipe: fix on-debug build breakageBrian Paul2010-07-291-1/+1
|
* llvmpipe: added some jit debug codeBrian Paul2010-07-292-0/+40
| | | | | If we crash in the jitted function we can examine jit_line and jit_state in gdb to learn more about the shader.
* draw: do bounds checking of array elements (debug only)Brian Paul2010-07-291-9/+26
| | | | | | | | | Make sure that all the element indexes actually lie inside the vertex buffer. Also, rename pipe_run() to pipe_run_elts() to be more specific. And assert/check the vertex count for the non-indexed case.
* draw: assorted clean-ups in clipper codeBrian Paul2010-07-291-20/+20
|
* gallium: implement bounds checking for constant buffersBrian Paul2010-07-2916-27/+117
| | | | | | Plumb the constant buffer sizes down into the tgsi interpreter where we can do bounds checking. Optional debug code warns upon out-of-bounds reading. Plus add a few other assertions in the TGSI interpreter.
* draw: add vertex buffer offset in draw_print_arrays()Brian Paul2010-07-291-0/+1
|
* llvmpipe: silence warnings in lp_test_sincos.cBrian Paul2010-07-291-2/+3
|
* r600g: mipmap early support + EX2/ABS instruction + cullingJerome Glisse2010-07-296-34/+108
| | | | | | | | | | Add mipmap support (demos/src/redbook/mipmap is working) Add EX2/ABS shader instruction support. Add face culling support. Misc fixes. Signed-off-by: Jerome Glisse <[email protected]>
* r300g/swtcl: fix crash in ETQW and minor fixupsMarek Olšák2010-07-293-26/+14
| | | | | | | The Draw flush inside r300_flush was the culprit. Also, no need to flush Draw when changing a state since the flush is already inside swtcl_draw_vbo.
* r300g/swtcl: fix crash after the draw_vbo mergeMarek Olšák2010-07-291-1/+1
|
* llvmpipe: also test the new lp_build_assert() functionBrian Paul2010-07-291-0/+4
|
* llvmpipe: don't call LLVMCreateJITCompiler() twiceBrian Paul2010-07-295-45/+14
| | | | | | | | | Fixes a failed assertion with LLVM 2.6: <unnamed>::JITResolver::JITResolver(llvm::JIT&): Assertion `TheJITResolver == 0&& "Multiple JIT resolvers?"' failed. Though, not everyone seems to experience this problem.
* gallivm: added lp_build_assert() function to make assertions in LLVM codeBrian Paul2010-07-294-0/+144
|
* Revert "gallivm: fix lp_build_sample_offset() crash when indexing a 1-D texture"José Fonseca2010-07-291-3/+0
| | | | | | This reverts commit 5f90e76c54bbf4456c977b3cbca450d7a570179e. Bad cherry-pick.
* gallivm: fix lp_build_sample_offset() crash when indexing a 1-D textureBrian Paul2010-07-291-0/+3
| | | | | If y==NULL and y_stride==NULL it means the texture is 1D. Return zero for out_i and the offset instead of garbage.
* util: add uint version of pack_z_stencilKeith Whitwell2010-07-291-0/+47
| | | | Useful for packing mask values.
* scons: Use the current python executable for code generation.José Fonseca2010-07-292-3/+4
| | | | Less susceptible to be broken.
* draw: Also emit EMMS on generated LLVM IR.José Fonseca2010-07-291-0/+11
|
* llvmpipe: Avoid corrupting the FPU stack with MMX instructions on 32bit OSes.José Fonseca2010-07-292-0/+29
| | | | | | | Unfortunately LLVM doesn't emit EMMS itself, and there is no easy/effective way to disable MMX. http://llvm.org/bugs/show_bug.cgi?id=3287
* util: Don't include xmmintrin.h.José Fonseca2010-07-291-1/+0
| | | | Unnecessary.
* st/python: Adapt to interface change.Chia-I Wu2010-07-291-21/+18
| | | | This is only compile tested.
* graw/tests: Use pipe_context::draw_vbo.Chia-I Wu2010-07-297-17/+28
| | | | | | | The other drawing variants such as draw_arrays or draw_elements_instanced were removed. This fixes fdo bug #29287.
* gallium: Avoid void pointer arithmetic.Chia-I Wu2010-07-294-7/+7
| | | | This fixes fdo bug #29286.
* gallium/docs: Document draw_vbo and set_index_buffer.Chia-I Wu2010-07-292-58/+27
| | | | | Document the new unified drawing method and remove references to old ones.
* gallium: Keep only pipe_context::draw_vbo.Chia-I Wu2010-07-2925-1188/+6
| | | | | | | That is, remove pipe_context::draw_arrays, pipe_context::draw_elements, pipe_context::draw_arrays_instanced, pipe_context::draw_elements_instanced, pipe_context::draw_range_elements.
* gallium: Use unified pipe_context::draw_vbo.Chia-I Wu2010-07-292-3/+2
| | | | Update u_draw_quad, st/vega, and st/mesa to use pipe_context::draw_vbo.
* gallium: Implement draw_vbo and set_index_buffer for all drivers.Chia-I Wu2010-07-2948-202/+1004
| | | | | | | | | | | | | | | Some drivers define a generic function that is called by all drawing functions. To implement draw_vbo for such drivers, either draw_vbo calls the generic function or the prototype of the generic function is changed to match draw_vbo. Other drivers have no such generic function. draw_vbo is implemented by calling either draw_arrays and draw_elements. For most drivers, set_index_buffer does not mark the state dirty for tracking. Instead, the index buffer state is emitted whenever draw_vbo is called, just like the case with draw_elements. It surely can be improved.
* gallium: Add pipe_context::draw_vbo and pipe_context::set_index_buffer.Chia-I Wu2010-07-292-0/+41
| | | | | | This commit adds a new unified draw_vbo method to pipe_context. Unlike other draw methods, draw_vbo treats the index buffer as a state which is set with set_index_buffer.
* Untangle gallium/egl/glx source sharing mess and make it compile againKristian Høgsberg2010-07-283-114/+58
|
* r600g: state context ptr in sampler_view & add I8/L8 buffer formatJerome Glisse2010-07-282-0/+3
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: switch btw flat/linear interpolationJerome Glisse2010-07-283-3/+7
| | | | | | | | | I am not sure how to properly handle flat shading regarding non color parameter to fragment shader. It seems we should still interpolate non color using linear interpolation and flat shade only apply to color. Signed-off-by: Jerome Glisse <[email protected]>
* r600g: split pipe state creating/binding from hw state creationJerome Glisse2010-07-289-612/+1077
| | | | | | | | | Split hw vs pipe states creation handling as hw states group doesn't match pipe state group exactly. Right now be dumb about that and rebuild all hw states on each draw call. More optimization on that side coming. Signed-off-by: Jerome Glisse <[email protected]>
* r600g: cleanup resource buffer/texture messJerome Glisse2010-07-2810-259/+217
| | | | | | Use a common function, fix the mess it was before. Signed-off-by: Jerome Glisse <[email protected]>
* r600g: add lrp instruction supportJerome Glisse2010-07-281-3/+80
| | | | Signed-off-by: Jerome Glisse <[email protected]>
* r600g: actualy fix the literal emissionJerome Glisse2010-07-281-3/+3
| | | | | | | Previous patch added literal emission to wrong place, we want to emit literal before emitting a new alu group. Signed-off-by: Jerome Glisse <[email protected]>
* gallium/docs: Fix VMware spelling.Vinson Lee2010-07-281-2/+2
|
* draw: Fix VMware spelling.Vinson Lee2010-07-283-3/+3
|
* r600g: fix up segfault with variation between views and count.Dave Airlie2010-07-281-4/+18
| | | | | For some reason gallium hands us something with lots of empty views, and we are expected to deal with it, just do what r300g does for this bit.
* gallium/docs: Fix VMware spelling.Corbin Simpson2010-07-271-2/+2
|
* r600g: use gallium util for float->ui conversionDave Airlie2010-07-282-19/+6
|
* scons: Fix sunos5 build.Vinson Lee2010-07-272-0/+6
|
* r600g: texture supportJerome Glisse2010-07-277-9/+610
| | | | | | | | | | | | | Add texture mapping support, redbook/texbind works if you comment out glClear and second checkboard. Need to fix : - texture overwritting - lod & mip/map handling - unormalized coordinate handling - texture view with first leve > 0 - and many other things Signed-off-by: Jerome Glisse <[email protected]>
* llvmpipe: pass face+slice to llvmpipe_unswizzle_cbuf_tile()Brian Paul2010-07-271-2/+3
| | | | | | | | Cube map faces and 3D texture slices are treated the same in llvmpipe textures. Need to pass the sum of these fields to llvmpipe_unswizzle_cbuf_tile() as we do elsewhere. Fixes piglit fbo-3d test (fd.o bug 29135).
* r600g: Move declaration before code.Vinson Lee2010-07-271-2/+5
| | | | Fixes SCons build.
* swrastg: Add SWRAST_NO_PRESENT option to not send updates to X serverJakob Bornecrantz2010-07-271-1/+9
| | | | | There seem to be a problem with this path and freeglut where the window wont open if SWRAST_NO_PRESENT is set to true.
* r600g: always emit literal after emiting an alu instructionJerome Glisse2010-07-271-29/+32
| | | | | | Make sure we always fill in the literal after alu instruction. Signed-off-by: Jerome Glisse <[email protected]>
* llvmpipe: Use lp_build_select_bitwise() where appropriate.José Fonseca2010-07-271-11/+11
| | | | Fixes fdo 29269.
* gallivm: Add lp_build_select_bitwise() alternative to lp_build_select_bitwiseJosé Fonseca2010-07-272-22/+50
| | | | | | | | | | When (mask & a) | (~mask & b) is meant instead of mask ? a : b
* cell: comment-out unused fields, functionsBrian Paul2010-07-261-2/+4
|
* cell: make functions staticBrian Paul2010-07-261-3/+3
|