summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* gallivm/llvmpipe: move an old comment to a better locationBrian Paul2010-05-102-11/+11
|
* svga: Fill in is_resource_referenced callback.José Fonseca2010-05-101-0/+1
|
* gallivm: Silent warning.José Fonseca2010-05-101-1/+1
|
* gallivm: Add missing lvalue.José Fonseca2010-05-101-1/+1
|
* i965g: link with software- wrapper winsys and drm api helperJakob Bornecrantz2010-05-101-0/+2
|
* gallium: Add software drm api helper to scons buildJakob Bornecrantz2010-05-102-0/+22
|
* gallium: Add pipe wrapper software winsys to scons buildJakob Bornecrantz2010-05-102-0/+26
|
* i965g: fix resource creation recursion bugRoland Scheidegger2010-05-101-1/+1
|
* i965g: add brw_state_debug.c to SConscriptRoland Scheidegger2010-05-101-1/+1
|
* i965g: avoid void * arithmeticRoland Scheidegger2010-05-101-1/+1
|
* gallivm: Temporarily disable custom LLVMDumpValue on MSVC.José Fonseca2010-05-101-2/+3
| | | | | | | Seeing very weird crashes during std::cout initialization. The fault probably lies in the way I build LLVM on MSVC, but disable for now to allow more time to investigate.
* gallivm: cosf/sinf are macros on MSVC.José Fonseca2010-05-101-2/+12
| | | | So taking the function address does not work.
* gallivm: Add an alternative to LLVMDumpValue that works with Windows GUI apps.José Fonseca2010-05-087-9/+113
|
* gallivm: Fix mipfiltering with negative lod bias.José Fonseca2010-05-081-2/+4
| | | | | | | In particular, don't use the clamped lod to compute level + 1, or lod in [-1, 0] range will actually interpolate with level 1. This makes Mipfilter DCT pass 100%.
* gallivm: Actually do floor/ceil/trunc for scalars.José Fonseca2010-05-083-166/+34
| | | | | | Also start axing the code duplication for scalar case. The olution is to treat the scalar case specially in a few innermost functions, and leave outer functions untouched.
* gallivm: Import the code to compute the minimax polynomials.José Fonseca2010-05-081-0/+85
| | | | | | It's quite a pain to remember the details after a while, and it is quite likely we'll want to use this again, either for different polynomial orders or different functions, so commit it here.
* gallivm: Use a minimax polynomial for exp2 in range [0,1] instead [-0.5,5].José Fonseca2010-05-081-14/+41
| | | | | | | | | | The advantage of range[-0.5, 0.5] is that it doesn't require floor (for which intrinsics are only available in SSE4.1). But the EXP opcode pretty much forces us to use floor, and there is a good floor approximation around truncation available anyway. This fixes EXP failures in VShader DCT.
* gallivm: Don't hardcode number of args twice.José Fonseca2010-05-081-1/+1
|
* r300g: follow pipe_rasterizer_state::light_twosideMarek Olšák2010-05-083-5/+27
|
* r300g: follow pipe_rasterizer_state::point_size_per_vertexMarek Olšák2010-05-081-4/+15
|
* r300g: move GA_POINT_MINMAX back to rs_stateMarek Olšák2010-05-083-6/+17
| | | | This basically reverts commit 74f94e8fdfe035fa68acdc19e6b0afc2957a4264.
* r300g: fix glean/pointSprite using lodbias correctionMarek Olšák2010-05-081-1/+1
|
* r300g: pass depth texture swizzle to the compiler if compare mode is enabledMarek Olšák2010-05-086-68/+111
|
* r300g: respect compare mode regardless of sampler typeMarek Olšák2010-05-081-0/+2
|
* r300/compiler: generalize depth texture mode to support arbitrary swizzlesMarek Olšák2010-05-081-2/+2
|
* r300g: consolidate common render code into one functionMarek Olšák2010-05-084-85/+95
| | | | | | | | | | This reduces redundant code by moving: - CS space reservation - buffer validation - dirty state emission - index bias emission - AOS emission into r300_prepare_for_rendering.
* gallivm: The the JIT engine to use our sinf()/cosf() on Windows.José Fonseca2010-05-081-18/+79
| | | | | A quick hack to get the right results, as there are many DCT tests which use these opcodes to generate data to test other opcodes.
* gallivm: Fix BREAK/CONT translation.José Fonseca2010-05-081-44/+63
| | | | | | | | | | The cont_mask must be restored and exec mask recomputed in order to decide whether to repeat the loop or not. Unlike the continue mask, the break_mask must be preserved across loop iterations. Fixes several VShader DCT cases, and no regressions with glean.
* llvmpipe: Cover more formats in unit test.José Fonseca2010-05-081-29/+38
|
* gallivm: Fix segfaul when inserting allocas in an empty function.José Fonseca2010-05-081-3/+10
|
* gallivm: Centralize SoA swizzling into a single place.José Fonseca2010-05-085-70/+128
|
* gallivm: Support predicates.José Fonseca2010-05-082-8/+101
|
* llvmpipe: Match p_screen.h's function prototype.José Fonseca2010-05-081-1/+1
|
* llvmpipe: Remove unnecessary header.Vinson Lee2010-05-081-1/+0
|
* egl: Build drivers in $(TOP)/$(LIB_DIR)/egl.Chia-I Wu2010-05-081-3/+4
| | | | | There are enough EGL modules that they deserve a subdirectory, to avoid polluting $(TOP)/$(LIB_DIR).
* gallium: Add egl-apis target.Chia-I Wu2010-05-089-151/+130
| | | | | | | | | | | | | | | The new target installs client API modules to EGL_DRIVER_INSTALL_DIR. They are used by st/egl. The client APIs are built from OpenGL and OpenVG state trackers. For this to work, st/vega is modified to produce a static library, libvega.a, instead. st/es is also not needed any more. It is removed and --with-state-trackers=es is replaced by --enable-gles-overlay. As st/egl now has its own client API modules, this solves the ABI issue between st/egl and client APIs, as long as the client API modules are distributed with st/egl. Plus, this allows st/egl to support OpenGL with non-Gallium libGL.so.
* egl_g3d: Check external modules for client APIs first.Chia-I Wu2010-05-083-39/+157
| | | | | dlopen api_<API>.so before dlopening the process itself in case the client APIs are implemented in external modules.
* gallium/draw: additional comments in the clipping codeBrian Paul2010-05-071-5/+10
|
* tgis: fix SOA aliasing for MUL instruction in SSE codegenBrian Paul2010-05-071-4/+11
| | | | Part of a fix for piglit trinity-fp1 test failure.
* wgl: Add mapi to includes.José Fonseca2010-05-071-0/+1
|
* st/vega: Use vgapi.Chia-I Wu2010-05-0716-235/+393
| | | | | | Rename vgFooBar to vegaFooBar and use vgapi as the dispatcher. This makes sure there is always a current context when the internal functions are called. And eglGetProcAddress is finally supported.
* glapi: Move to src/mapi/.Chia-I Wu2010-05-0713-5/+16
| | | | Move glapi to src/mapi/{glapi,es1api,es2api}.
* gallivm: Require SSE2 for draw_llvm/llvmpipe due to LLVM PR6960.Török Edwin2010-05-062-2/+18
| | | | | | | | Note that this also requires X86 for llvm, if llvmpipe/draw_llvm works on PPC then the condition should be extended to include && x86. Signed-off-by: Török Edwin <[email protected]> Signed-off-by: José Fonseca <[email protected]>
* softpipe: fix dangling references to shaders in the TGSI executorBrian Paul2010-05-064-20/+22
| | | | | | | | | | | | | | | If a shader was bound to the fragment shader TGSI executor and it was then deleted and a new shader was allocated at the same address as the old shader, the new fragment shader would not get properly bound to the TGSI machine and we'd wind up using the old one. This would not have been a problem if shaders were refcounted. Now the TGSI machine is owned by the context rather than the quad pipeline's shader stage so that the softpipe_delete_fs_state() function can access it. Fixes sporadic failures of the piglit fp-long-alu test (fd.o bug 27989).
* tgsi: make SSE ADD instruction SOA-safeBrian Paul2010-05-061-5/+13
| | | | | | | | | | | To properly execute an instruction such as "ADD tmp, tmp.wzyx, foo;" with SOA we (sometimes) need to put the results into temporaries before writing the results to the destination register. This patch fixes the ADD instruction but this needs to be done for many more instructions. Helps to fix piglit fp-long-alu test (fd.o bug 27989).
* tgsi: code refactoringBrian Paul2010-05-061-16/+34
|
* tgsi: added tgsi_get_processor_name()Brian Paul2010-05-062-0/+18
|
* tgsi: fix tgsi_exec_machine_bind_shader() to handle NULL tokens, samplersBrian Paul2010-05-061-1/+20
| | | | | | This lets us unbind a shader from the tgsi_exec_machine. Since shaders aren't ref counted we need this to properly clean up when deleting shaders elsewhere.
* gallium/tgsi: remove unused tgsi_exec_labels codeBrian Paul2010-05-062-22/+0
|
* llvmpipe: Fix fence wait.José Fonseca2010-05-061-1/+4
| | | | | Avoids crashing when fence is NULL (LP_NUM_THREADS=0) and leaking when it is not.