summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary
Commit message (Collapse)AuthorAgeFilesLines
* util: Add strings.h include on unicesJosé Fonseca2011-12-091-0/+4
| | | | | Fixes -Wimplicit-function-declaration for ffs with GCC. Spotted/tested by Kai Wasserbäch.
* llvmpipe: Trim the fragment shader cached based on LLVM IR instruction count.José Fonseca2011-12-082-0/+29
| | | | | | | | | | | | Number of fragment shader variants is not very representative of the memory used by LLVM, neither is number of shader instructions, as often texture sampling constitutes most of the generated code. This change adds an additional trim criteria: least recently used fragment shader variants will be freed until the total number of LLVM IR instruction falls below a specified threshold. Reviewed-by: Brian Paul <[email protected]>
* llvmpipe,draw,gallivm: Ensure we don't walk beyond the end of the shader ↵José Fonseca2011-12-081-2/+7
| | | | | | | | | | | variant list. u_simple_list.h uses a sentinel element, and not a NULL element. So ensure list is not empty when reducing the list of shader variants. Something I noticed while trying to free variants more aggressively. Reviewed-by: Brian Paul <[email protected]>
* util: add casts in fprintf() calls to silence warningsBrian Paul2011-12-031-4/+6
| | | | And wrap to 80 columns.
* gallium: add PIPE_FORMAT_ETC1_RGB8Chia-I Wu2011-12-027-2/+162
| | | | | | | The format is defined by GL_OES_compressed_ETC1_RGB8_texture. Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Jose Fonseca <[email protected]>
* u_vbuf: Silence uninitialized variable warnings.Vinson Lee2011-12-011-0/+2
| | | | | | | | | | Fixes these GCC warnings. u_vbuf.c: In function ‘u_vbuf_draw_begin’: u_vbuf.c:839:20: warning: ‘max_index’ may be used uninitialized in this function [-Wuninitialized] u_vbuf.c:838:20: warning: ‘min_index’ may be used uninitialized in this function [-Wuninitialized] Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* gallium/cell: Remove the driver.Kai Wasserbäch2011-11-294-1514/+2
| | | | | | | Complicates Gallium3D development and doesn't seem to have active users. Signed-off-by: Kai Wasserbäch <[email protected]> Signed-off-by: José Fonseca <[email protected]>
* Remove windows kernel support code.José Fonseca2011-11-2910-420/+9
| | | | | | Not actively used. Reviewed-by: Brian Paul <[email protected]>
* gallium/auxiliary: Remove os_stream.José Fonseca2011-11-2911-753/+91
| | | | | | XP kernel mode was the only subsystem lacking stdio FILES. Reviewed-by: Brian Paul <[email protected]>
* gallium: add B10G10R10A2_UINT formatDave Airlie2011-11-271-0/+1
| | | | | | This format is used for ARB_texture_rgb10_a2ui extension. Signed-off-by: Dave Airlie <[email protected]>
* u_vbuf_mgr: rename to u_vbufMarek Olšák2011-11-223-24/+24
|
* u_vbuf_mgr: better way to find a free VB slot + check errors earlyMarek Olšák2011-11-221-41/+62
|
* u_vbuf_mgr: remove a useless variableMarek Olšák2011-11-221-4/+4
|
* u_vbuf_mgr: remove redundant memsetMarek Olšák2011-11-221-3/+1
|
* u_vbuf_mgr: don't reference non-native vertex buffers as nativeMarek Olšák2011-11-221-1/+2
| | | | | also don't mark them as 'user', because they will be uploaded through the translate fallback anyway.
* u_vbuf_mgr: rename translate_vb_slot -> fallback_vb_slotMarek Olšák2011-11-221-15/+14
|
* gallium: separate out floating-point CAPs into its own enumMarek Olšák2011-11-221-1/+1
| | | | | | | | | | | | | | | The motivation behind this is to add some self-documentation in the code about how each CAP can be used. The idea is: - enum pipe_cap is only valid in get_param - enum pipe_capf is only valid in get_paramf Which CAPs are floating-point have been determined based on how everybody except svga implemented the functions. svga have been modified to match all the other drivers. Besides that, the floating-point CAPs are now prefixed with PIPE_CAPF_.
* gallium: remove PIPE_CAP_GLSL and enable GLSL unconditionallyMarek Olšák2011-11-221-1/+0
| | | | | Only i965g does not enable GLSL, but that driver has been unmaintained and bitrotting for quite a while anyway.
* gallium: add PIPE_SHADER_CAP_OUTPUT_READVadim Girlin2011-11-211-1/+0
| | | | | | | It's intended to indicate whether the driver/hardware supports reading of the values written into shader outputs. Signed-off-by: Vadim Girlin <[email protected]>
* u_vbuf_mgr: correctly compute max vertex count from hw buffersMarek Olšák2011-11-202-26/+34
| | | | | | | | And update r300g. This is different from util_draw_max_index in how it obtains vertex elements and that it doesn't have to call util_format_description due to additional precomputed data in vertex elements.
* u_vbuf_mgr: correctly obtain min/max_index for uploads and translateMarek Olšák2011-11-201-7/+146
| | | | | | This forks vbo_get_minmax_index. We need to know the index range when translating non-native vertices into native ones. There is no other way around it.
* u_vbuf_mgr: add set_index_buffer functionMarek Olšák2011-11-202-0/+18
| | | | It will use the index buffer soon.
* u_vbuf_mgr: add commentsMarek Olšák2011-11-201-5/+15
|
* u_vbuf_mgr: don't upload user buffers which have been uploaded by translateMarek Olšák2011-11-201-19/+33
|
* util/draw: replace assertions with conditionals in util_draw_max_index()Brian Paul2011-11-152-13/+39
| | | | | | | | | | | | | | Don't assert/die if a VBO is too small. Return zero instead. For debug builds, emit a warning message since this is an unusual situation that might indicate that there's a bug in the app. Note that util_draw_max_index() now returns max_index+1 instead of max_index. This lets us return zero to indicate that one of the VBOs is too small to draw anything. Fixes a failure with the new piglit vbo-too-small test. Reviewed-by: José Fonseca <[email protected]>
* gallium: add TGSI_SEMANTIC_VERTEXIDChristoph Bumiller2011-11-144-0/+6
|
* util: Avoid signed/unsigned comparison in u_trim_pipe_prim().José Fonseca2011-11-141-1/+1
|
* draw: Handle failure to allocate aligned_constant_storage.José Fonseca2011-11-141-3/+9
| | | | | | | | Also, actually update const_storage_size, therefore avoiding to unnecessarily reallocate aligned_constant_storage every single time draw_vs_set_constants() is called. Reviewed-by: Brian Paul <[email protected]>
* gallivm: Remove duplicate statement.José Fonseca2011-11-141-2/+0
| | | | | | ary_ge_arx_arz is already set earlier. Reviewed-by: Brian Paul <[email protected]>
* gallivm: Include stddef.h before the LLVM C++ headers.José Fonseca2011-11-142-0/+4
| | | | | Necessary with build against LLVM 2.6, with recent gcc, as LLVM headers depend on ptrdiff_t but don't properly include stddef.h
* draw: handle out of memory conditionsBrian Paul2011-11-111-3/+5
| | | | | If the vbuf backend fails to allocate a vertex buffer, don't crash or assert.
* util: check for null vertex buffer object in blit codeBrian Paul2011-11-111-6/+10
| | | | Don't crash if we fail to allocate a vertex buffer.
* draw/llvm: silence uninitialized variable warningsBrian Paul2011-11-101-0/+2
|
* llvmpipe/u_format: add support for EXT_texture_shared_exponent + ↵Dave Airlie2011-11-101-0/+5
| | | | | | | | | | | EXT_packed_float These two are fairly unique types so add specific cases for decoding them. Passes piglit fbo-clear-format and fbo-generatemipmap-format tests for these two extensions. Signed-off-by: Dave Airlie <[email protected]>
* Remove tgsi_sse2.José Fonseca2011-11-0812-6782/+2
| | | | tgsi_exec is simple. llvm is fast. tgsi_sse2 ends up being neither.
* util: add log2f for AndroidChia-I Wu2011-11-071-0/+11
| | | | | | | | | It is needed for nv50's new shader backend. With this change, both u_math.h and imports.h in core mesa define the same function. I have to #undef log2f here to avoid the conflict. Not sure if there is a better way to deal with the situation. Acked-by: José Fonseca <[email protected]>
* llvmpipe: fix typo in the depth sampling aos code.Dave Airlie2011-11-061-1/+1
| | | | | | Just found by reading llvmpipe code for no great reason. Signed-off-by: Dave Airlie <[email protected]>
* u_format: fix RGTC support in fits 8unorm.Dave Airlie2011-11-061-2/+7
| | | | | | Signed RGTC won't fit in a unorm, so don't allow them. Signed-off-by: Dave Airlie <[email protected]>
* gallivm: change sys::getHostTriple to sys::getDefaultTargetTriple for LLVM ↵Christian Inci2011-11-061-0/+4
| | | | | | | | >= 0x0301 LLVM change r143502 Signed-off-by: José Fonseca <[email protected]>
* g3dvl: Fix memory leaks on error paths.Vinson Lee2011-11-051-1/+4
| | | | | | Fixes Coverity resource leak defect. Reviewed-by: Brian Paul <[email protected]>
* pp: Reorder calloc to avoid memory leak on error path.Vinson Lee2011-11-051-3/+4
| | | | | | Fixes Coverity resource leak defect. Reviewed-by: Brian Paul <[email protected]>
* st/mesa: set geometry shader to NULL when doing internal drawingMarek Olšák2011-11-043-1/+27
| | | | | | | The code expects the geometry shader to be NULL. We don't have geometry shaders now, but it's good to be prepared. v2: check for support in the cso context
* gallium/cso_cache: remove one call to pipe_sampler_view_referenceMarek Olšák2011-11-041-2/+4
|
* u_vbuf_mgr: avoid one call to pipe_resource_reference in most casesMarek Olšák2011-11-041-1/+2
|
* draw: assert that we have non-null fragment shaderBrian Paul2011-11-032-0/+4
| | | | Instead of just segfaulting. Recently ran into this.
* state_trackers/vdpau: Implement VdpGenerateCSCMatrixMaarten Lankhorst2011-11-032-1/+21
| | | | | | With the smpte240 profile, which was missing. Signed-off-by: Maarten Lankhorst <[email protected]>
* g3dvl: remove some stale variable incrementChristian König2011-11-031-1/+1
| | | | | | | | Incrementing "td" before initializing it is pointless and just leads to an uninitialized variable warning with MSVC. Signed-off-by: Christian König <[email protected]>
* gallium/util: Add macros for converting from little endian to CPU byte order.Michel Dänzer2011-11-021-0/+13
| | | | | Signed-off-by: Michel Dänzer <[email protected]> Reviewed-by: Jose Fonseca <[email protected]>
* postprocess: remove const qualifiers on unsigned int parametersBrian Paul2011-11-011-2/+2
| | | | to match the prototype in postprocess.h
* llvmpipe: Remove unsed variables.José Fonseca2011-10-312-6/+1
|