summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* mesa: Remove support for NV_vertex_program's tracked matrices.Eric Anholt2012-10-1511-274/+2
| | | | Reviewed-by: Brian Paul <[email protected]>
* mesa: Remove Mesa IR opcodes that existed only for NV_vertex_program.Eric Anholt2012-10-156-85/+0
| | | | | | v2: Remove dead positive() function, caught by Matt. Reviewed-by: Brian Paul <[email protected]> (v1)
* mesa: Remove support for parsing NV vertex programs.Eric Anholt2012-10-157-1562/+5
| | | | Reviewed-by: Brian Paul <[email protected]>
* swrast: Remove support for GL_NV_vertex_program.Eric Anholt2012-10-152-3/+0
| | | | | | | It's not supported in any hardware drivers, and doesn't appear to be useful on Linux. Reviewed-by: Brian Paul <[email protected]>
* gallium: Remove #if 0-ed enable of NV_vp. It's going away.Eric Anholt2012-10-151-5/+0
| | | | Reviewed-by: Brian Paul <[email protected]>
* r200: Remove support for software-only NV_vertex_program.Eric Anholt2012-10-154-18/+1
| | | | | | | | It wasn't supported in hardware, and the comments in the code indicated no known uses (similar to my experience on Intel) and a possible intent to remove it. Reviewed-by: Brian Paul <[email protected]>
* intel: Remove NV_vertex_program support.Eric Anholt2012-10-153-9/+0
| | | | | | | | | | | | We were holding on to this code because we were aware that NWN 1 had some support for vertex programs -- no other linux programs I've come across would use it (since other software also has ARB_vp or GLSL support). Only, it turns out that NWN doesn't even give us any vertex programs. Given that we have known issues where the extension has never been fully supported, just give up on it. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=46795 Reviewed-by: Brian Paul <[email protected]>
* i965/vp: Remove more code for unused opcodes.Eric Anholt2012-10-151-55/+1
| | | | | | | These don't appear in ARB_vp or NV_vp and I missed that fact on the first pass of removing dead opcodes. Reviewed-by: Brian Paul <[email protected]>
* r600g: drop useless switch statementAndreas Boll2012-10-151-94/+7
| | | | Reviewed-by: Alex Deucher <[email protected]>
* gallium/docs: update some distro informationAndreas Boll2012-10-152-8/+37
| | | | Reviewed-by: Brian Paul <[email protected]>
* r600g: emit the border color only when it's neededMarek Olšák2012-10-154-4/+24
| | | | That depends on the texture wrap modes and filtering.
* r600g: cleanup create_sampler_state functionsMarek Olšák2012-10-153-57/+46
| | | | | | | - stopped using util_color - reformatted to occupy less characters per line. - used memcpy for the border color - used pipe_color_union in the state structure
* st/mesa: fix integer texture border color for some formats (v2)Marek Olšák2012-10-154-48/+112
| | | | | | | | | | | | And the clear color too, though that may be an issue only with GL_RGB if it's actually RGBA in the driver. NOTE: This is a candidate for the stable branches. Reviewed-by: Brian Paul <[email protected]> v2: The types of st_translate_color parameters were changed to gl_color_union and pipe_color_union as per Brian's comment.
* util: added debug_print_transfer_flags() functionBrian Paul2012-10-152-0/+45
|
* mesa: Fix a crash in update_texture_state() for external texture typeAbdiel Janulgue2012-10-152-0/+10
| | | | | | | NOTE: This is a candidate for the stable branch. Signed-off-by: Abdiel <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* svga: remove needless debug-mode linked list codeBrian Paul2012-10-151-3/+1
| | | | LIST_DEL() always sets the prev/next pointers to NULL now.
* util: null-out the node's prev/next pointers in list_del()Chris Fester2012-10-151-0/+1
| | | | | Note: This is a candidate for the 9.0 branch. Signed-off-by: Brian Paul <[email protected]>
* nouveau: fix offset in nouveau_buffer_transfer_mapChristoph Bumiller2012-10-141-1/+1
| | | | | Before 369e46888904c6d379b8b477d9242cff1608e30e, the transfer was initialized before the call to map and had the correct value already.
* u_format_s3tc.c: Don't call getenv() twiceMatt Turner2012-10-121-2/+3
| | | | Reviewed-by: Brian Paul <[email protected]>
* android: generate matching remap_helper to dispatch tableTapani Pälli2012-10-121-1/+1
| | | | | | | | | | | commit a010215463c63680c69e90202fe3fcd2e5b25fa6 removed ES2 specific dispatch table and remap_helper, since now we are using dispatch.h which is generated from gl_and_es_API.xml we need to generate a matching remap_helper using the same xml. Note: This is a candidate for the 9.0 branch. Signed-off-by: Tapani Pälli <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* gallivm: Don't use llvm.x86.avx.max/min.ps.256 inadvertently.José Fonseca2012-10-121-4/+4
| | | | Could happen when CPU supports AVX, but LLVM doesn't.
* tgsi: Dump register number when dumping immediates.José Fonseca2012-10-121-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For example: VERT DCL IN[0] DCL OUT[0], POSITION DCL OUT[1], GENERIC[12] DCL CONST[0..4] DCL TEMP[0], LOCAL DCL TEMP[1], LOCAL IMM[0] UINT32 {4294967295, 0, 0, 0} IMM[1] FLT32 { 0.0000, 1.0000, 0.0000, 0.0000} 0: SEQ TEMP[0].x, CONST[3].xxxx, IMM[0].xxxx 1: F2I TEMP[0].x, -TEMP[0] 2: SEQ TEMP[1].x, CONST[4].xxxx, IMM[0].xxxx 3: F2I TEMP[1].x, -TEMP[1] 4: AND TEMP[0].x, TEMP[0].xxxx, TEMP[1].xxxx 5: IF TEMP[0].xxxx :0 6: MOV TEMP[0], IMM[1].xyxy 7: ELSE :0 8: MOV TEMP[0], IMM[1].yxxy 9: ENDIF 10: MOV OUT[1], TEMP[0] 11: MOV OUT[0], IN[0] 12: END instead of VERT DCL IN[0] DCL OUT[0], POSITION DCL OUT[1], GENERIC[12] DCL CONST[0..4] DCL TEMP[0], LOCAL DCL TEMP[1], LOCAL IMM UINT32 {4294967295, 0, 0, 0} IMM FLT32 { 0.0000, 1.0000, 0.0000, 0.0000} 0: SEQ TEMP[0].x, CONST[3].xxxx, IMM[0].xxxx 1: F2I TEMP[0].x, -TEMP[0] 2: SEQ TEMP[1].x, CONST[4].xxxx, IMM[0].xxxx 3: F2I TEMP[1].x, -TEMP[1] 4: AND TEMP[0].x, TEMP[0].xxxx, TEMP[1].xxxx 5: IF TEMP[0].xxxx :0 6: MOV TEMP[0], IMM[1].xyxy 7: ELSE :0 8: MOV TEMP[0], IMM[1].yxxy 9: ENDIF 10: MOV OUT[1], TEMP[0] 11: MOV OUT[0], IN[0] 12: END
* gallivm: fix rsqrt failuresRoland Scheidegger2012-10-122-15/+76
| | | | | | | | | | | | | | | | | | | | | | | | | lp_build_rsqrt initially did not do any newton-raphson step. This meant that precision was only ~11 bits, but this handled both input 0.0 and +infinity correctly. It did not however handle input 1.0 accurately, and denormals always generated infinity result. Doing a newton-raphson step increased precision significantly (but notably input 1.0 still doesn't give output 1.0), however this fails for inputs 0.0 and infinity (both result in NaNs). Try to fix this up by using cmp/select but since this is all quite fishy (and still doesn't handle denormals) disable for now. Note that even with workarounds it should still have been faster since the fallback uses sqrt/div (which both use the usually unpipelined and slow divider hw). Also add some more test values to lp_test_arit and test lp_build_rcp() too while there. v2: based on José's feedback, avoid hacky infinity definition which doesn't work with msvc (unfortunately using INFINITY won't cut it neither on non-c99 compilers) in lp_build_rsqrt, and while here fix up the input infinity case too (it's disabled anyway). Only test infinity input case if we have c99, and use float cast for calculating reference rsqrt value so we really get what we expect. Reviewed-by: José Fonseca <[email protected]>
* galahad: galahad_context_blitJosé Fonseca2012-10-121-11/+15
| | | | must unwrap.
* r600g: move shader structures into r600_shader.hMarek Olšák2012-10-129-25/+30
|
* mesa/st: Fix assertions.José Fonseca2012-10-121-2/+2
| | | | Can't access ptDraw before it is written.
* r600g: implement MSAA resolving for 8-bit and 16-bit integer formatsMarek Olšák2012-10-123-6/+46
| | | | by changing the format to NORM.
* intel: print debug either to stdout or `logcat' depending on platform.Oliver McFadden2012-10-122-4/+16
| | | | | Signed-off-by: Oliver McFadden <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* util: fix broken pipe_get_tile_rgba() callBrian Paul2012-10-111-1/+1
| | | | Fix breakage from commit 369e468.
* radeon/llvm: Fix build with LLVM 3.2Tom Stellard2012-10-111-3/+10
|
* clover: Fix build with LLVM 3.2Tom Stellard2012-10-111-1/+10
| | | | Reviewed-by: Francisco Jerez <[email protected]>
* clover: Don't link against libclangRewriteTom Stellard2012-10-111-1/+0
| | | | | | | This library does not exist in LLVM 3.2 and libOpenCL.so links fine without it on LLVM 3.1 Reviewed-by: Francisco Jerez <[email protected]>
* radeonsi: handle unhandled CAPsMarek Olšák2012-10-111-0/+4
|
* radeonsi: fixup the return type of is_format_supportedMarek Olšák2012-10-112-10/+10
|
* radeonsi: remove unused local variablesMarek Olšák2012-10-114-9/+0
|
* r600g: put user indices in the command stream for small index countsMarek Olšák2012-10-112-14/+28
| | | | | This improves performance a little bit if there are lots of small indexed draw commands.
* r600g: inline r600_translate_index_bufferMarek Olšák2012-10-114-65/+22
|
* gallium: unify transfer functionsMarek Olšák2012-10-11103-2014/+1204
| | | | | | | | | | | | | | "get_transfer + transfer_map" becomes "transfer_map". "transfer_unmap + transfer_destroy" becomes "transfer_unmap". transfer_map must create and return the transfer object and transfer_unmap must destroy it. transfer_map is successful if the returned buffer pointer is not NULL. If transfer_map fails, the pointer to the transfer object remains unchanged (i.e. doesn't have to be NULL). Acked-by: Brian Paul <[email protected]>
* st/mesa: use the renderbuffer chosen by core Mesa in CopyTexSubImageMarek Olšák2012-10-111-12/+1
| | | | Reviewed-by: Brian Paul <[email protected]>
* softpipe: remove unused functionsMarek Olšák2012-10-112-26/+0
| | | | Reviewed-by: Brian Paul <[email protected]>
* st/mesa: use transfer_inline_write in st_texture_image_dataMarek Olšák2012-10-111-46/+8
| | | | Reviewed-by: Brian Paul <[email protected]>
* st/mesa: remove useless checking in reset_cacheMarek Olšák2012-10-111-6/+0
| | | | | | It's always NULL here. Reviewed-by: Brian Paul <[email protected]>
* svga: don't use uninitialized framebuffer stateBrian Paul2012-10-111-2/+4
| | | | | | | | | | | Only the first 'nr_cbufs' color buffers in the pipe_framebuffer_state are valid. The rest of the color buffer pointers might be unitialized. Fixes a regression in the piglit fbo-srgb-blit test since changes in the gallium blitter code. NOTE: This is a candidate for the 9.0 branch (just to be safe). Reviewed-by: Jose Fonseca <[email protected]>
* svga: Remove wierd code which forces non-sRGB formats.John Kåre Alsaker2012-10-101-8/+0
| | | | Signed-off-by: Brian Paul <[email protected]>
* svga: Add support for 16-bit per channel RGBAJohn Kåre Alsaker2012-10-101-0/+3
| | | | Signed-off-by: Brian Paul <[email protected]>
* i965/vs: Add support for splitting virtual GRFs.Eric Anholt2012-10-103-0/+62
| | | | | | | | | | This should improve our ability to register allocate without spilling. Unfortuantely, due to the live variable analysis being ignorant of loops, we still have register allocation failures on some programs. v2: Add more context to the comment explaining the function. Reviewed-by: Kenneth Graunke <[email protected]> (v1)
* i965/vs: Try again when we've successfully spilled a reg.Eric Anholt2012-10-103-10/+16
| | | | | | | | Before, we'd spill one reg, then continue on without actually register allocating, then assertion fail when we tried to use a vgrf number as a register number. Reviewed-by: Kenneth Graunke <[email protected]>
* i965/vs: Implement register spilling.Kenneth Graunke2012-10-103-1/+144
| | | | | | | | | | | | | | To validate this code, I ran piglit -t vs quick.tests with the "go spill everything" debugging code enabled. There was only one regression: glsl-vs-unroll-explosion simply ran out of registers. This should be fine in the real world, since no one actually spills every single register. NOTE: This is a candidate for the 9.0 branch. Even if it proves to have bugs, it's likely better than simply failing to compile. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* i965/vs: Fix unit mismatch in scratch base_offset parameter.Kenneth Graunke2012-10-103-4/+8
| | | | | | | | | | | | | | | | | | | | | move_grf_array_access_to_scratch() calculates scratch buffer offsets in bytes. However, emit_scratch_read/write() expects the base_offset parameter to be measured in OWords. As a result, a shader using a scratch read/write offset greater than zero (in practice, a shader containing more than one variable in scratch) would use too large an offset, frequently exceeding the available scratch space. This patch corrects the mismatch by removing spurious conversion from OWords to bytes in move_grf_array_access_to_scratch(). This is based on a patch by Paul Berry. NOTE: This is a candidate for stable release branches. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* egl: Return EGL_BAD_MATCH for invalid profile attributesMatt Turner2012-10-101-10/+7
| | | | | | | Version 12 of the EGL_KHR_create_context spec changed this behavior. NOTE: This is a candidate for the 9.0 branch Reviewed-by: Chad Versace <[email protected]>