summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* st-api: Have context_create explain why creation failedIan Romanick2011-12-233-4/+28
| | | | | | | | | | This won't be used in the client-side libGL, but the xserver has to generate a different protocol error depending on the reason context creation failed. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Chia-I Wu <[email protected]>
* st-api: Clean-up OpenGL profile handlingIan Romanick2011-12-233-19/+44
| | | | | | | | | | | | | | | | There seems to have been two different ways to communicate the profile. There were flags and there were profiles. I've opted to remove the profile flags and use ST_PROFILE_DEFAULT (compatibility profile) and ST_PROFILE_OPENGL_CORE (core profile) consistently instead. Also change the values of the ST_CONTEXT_FLAG_DEBUG and ST_CONTEXT_FLAG_FORWARD_COMPATIBLE flags to match the WGL and GLX values. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Chia-I Wu <[email protected]>
* vl: improve vlc functions and handlingMaarten Lankhorst2011-12-232-59/+156
| | | | | | | | | | | | | | Only initialize vlc in MPEG2 decoding once for all slices, add more sanity checks to vlc decoding functions, support multiple vlc input buffer, improve documentation of the vlc functions. v2: also implement multiple inputs for the vlc functions v3: some bug fixes for buffer size and alignment corner cases v4: rework of the patch, some more improvements Signed-off-by: Maarten Lankhorst <[email protected]> Signed-off-by: Christian König <[email protected]>
* nouveau: Fix bugs in nouveau_video_bufferMaarten Lankhorst2011-12-232-4/+3
| | | | | | | Double free and array overflow, even if only 2 members are used the last one needs to be set to NULL explicitly. Signed-off-by: Maarten Lankhorst <[email protected]
* gallivm: Close a memory leakLauri Kasanen2011-12-221-0/+1
| | | | | | | | | | | | | | | | Hi all This fixes a memory leak of 32 bytes on exit. From 924f8fdccb41b011f372bc57252005bcdb096105 Mon Sep 17 00:00:00 2001 From: Lauri Kasanen <[email protected]> Date: Thu, 22 Dec 2011 21:28:33 +0200 Subject: [PATCH] gallivm: Close a memory leak As reported by "valgrind --leak-check=full glxgears". Signed-off-by: Lauri Kasanen <[email protected]> Signed-off-by: José Fonseca <[email protected]>
* softpipe: try and use back color for a slot if color fails.Dave Airlie2011-12-221-0/+5
| | | | | | | | | | | | | | In the case where a front and back output are specified, the draw code will copy the back output into the front color slot and everything is happy. However if no front is specified then the draw code will do a bad copy (separate patch), but also the frag shader won't pick up the color as there there is no write to COLOR from the vertex shader just BCOLOR. This patch fixes that problem so if it can't find a vertex shader output for the front color slot, it will go and lookup and use one for the back color slot. Signed-off-by: Dave Airlie <[email protected]>
* xvmc: Remove unused variableMaarten Lankhorst2011-12-201-3/+0
| | | | | Signed-off-by: Maarten Lankhorst <[email protected]> Signed-off-by: Christian König <[email protected]>
* vl: Remove unused declarationMaarten Lankhorst2011-12-201-1/+1
| | | | | | | csc is not used for rgba and gives a warning. Signed-off-by: Maarten Lankhorst <[email protected]> Signed-off-by: Christian König <[email protected]>
* vl: Use pipe clear_render_target instead of util_clear_render_targetMaarten Lankhorst2011-12-201-2/+2
| | | | | | | Mapping to software and uploading again clearing is killing performance. Signed-off-by: Maarten Lankhorst <[email protected]> Signed-off-by: Christian König <[email protected]>
* st/egl: error check and clamp coordinates in eglPostSubBufferNVChia-I Wu2011-12-201-8/+21
| | | | EGL_BAD_PARAMETER should be returned when any of the coordinates is negative.
* st/egl: Add support for EGL_NV_post_sub_bufferFredrik Höglund2011-12-202-2/+24
| | | | | | Signed-off-by: Fredrik Höglund <[email protected]> [olv: remove #ifdef checks]
* egl: remove #ifdef's for official extensionsChia-I Wu2011-12-204-14/+0
| | | | | | | There is no point in having them when we distribute eglext.h. As for unofficial extensions, there is a chance that we might remove some of them evetually. Keeping the #ifdef's for now should make that easier.
* i915g: Add unsupported caps.Stéphane Marchesin2011-12-191-0/+4
|
* i915g: Turn an assert into a debug message, print more debug info for ↵Stéphane Marchesin2011-12-192-4/+9
| | | | | | missing depth swz. Also fix indentation a bit.
* i915g: Make the pipe_sampler_state struct non const and get rid of useless ↵Stéphane Marchesin2011-12-192-2/+2
| | | | memcpy.
* i915g: Implement KILP.Stéphane Marchesin2011-12-191-3/+12
|
* i915g: Add two unsupported caps.Stéphane Marchesin2011-12-191-0/+2
|
* i915g: Put the templates at the beggining of the structures.Stéphane Marchesin2011-12-192-5/+5
| | | | | Seriously. This fixes fragment-and-vertex-texturing in piglit and probably a boatload of other stuff.
* tgsi: update documents with some info on texture lookupDave Airlie2011-12-191-0/+11
| | | | | | | this mentions which channels are used for slice and depth comparison values. Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* softpipe: fix shadow1d tests.Dave Airlie2011-12-191-1/+13
| | | | | | | This fixes the piglit glsl-1.10 shadow1D related tests. Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* softpipe: fix shadow 2d texture array samplingDave Airlie2011-12-192-6/+22
| | | | | | | | | The 4th texcoord is used in this case for the comparison. This fixes piglit glsl-fs-shadow2DArray* on softpipe. Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* gallium/draw: fix two side handlingDave Airlie2011-12-191-18/+9
| | | | | | | | | | | | The code didn't handle the case where front wasn't specified in the vertex shader outputs, but back was. In that case we were doing a copy from back to non-existant front, this code checks we have existant front/backs and only does the copy when they both exist. Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* vdpau: Add background surface supportMaarten Lankhorst2011-12-191-1/+10
| | | | | | | Sets rgba layer as zeroth layer if a custom background_surface is specified. Signed-off-by: Maarten Lankhorst <[email protected]> Signed-off-by: Christian König <[email protected]>
* vdpau: Add support for mixer attributesMaarten Lankhorst2011-12-193-15/+147
| | | | | | | | | | | It's harmless to add support for attributes we don't support, since they require a feature enabled for them to affect something. As long as they aren't enabled, nothing happens. This enables support for custom colorspaces and background colors. Signed-off-by: Maarten Lankhorst <[email protected]> Signed-off-by: Christian König <[email protected]>
* vdpau: Add support for parametersMaarten Lankhorst2011-12-193-6/+126
| | | | | | | | | | Currently only validating, since nothing else can be done with it yet Signed-off-by: Maarten Lankhorst <[email protected]> v2: removed check_video_surface Signed-off-by: Christian König <[email protected]>
* softpipe: fix depth sampling for linear vs nearest.Dave Airlie2011-12-191-7/+16
| | | | | | | | | | This sample compare was always doing linear, and this makes the glsl-fs-shadow1DArray test render like the Intel driver. fix wrong 0->j from initial patch Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* softpipe: fix texture sampling from 1D texture arrayDave Airlie2011-12-191-0/+13
| | | | | | | | | This is the first part of a fix to piglit glsl-fs-shadow1DArray also fix the passing of unused r[2] in the normal 1D case. Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* nvc0: add NVC0_RESOURCE_FLAG_VIDEOChristoph Bumiller2011-12-182-0/+30
|
* r600g: fix MAX_STREAM_OUTPUT_SEPARATE_ATTRIBS limitMarek Olšák2011-12-171-2/+1
|
* r600g: handle new capsMarek Olšák2011-12-171-0/+2
|
* r300g: handle new capsMarek Olšák2011-12-171-0/+4
|
* r600g: implement transform feedbackMarek Olšák2011-12-1718-13/+873
| | | | | | | | r600: DONE. r700: MOSTLY (done but locks up). Evergreen: MOSTLY (done but doesn't work for an unknown reason). The kernel support will come soon.
* gallivm: Fix build with llvm-3.1svn.Vinson Lee2011-12-162-1/+15
| | | | | | | | | llvm-3.1svn r145714 moved global variables into a new TargetOptions class. TargetMachine constructor now needs a TargetOptions object as well. Signed-off-by: Vinson Lee <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* gallium: fix a crash in drivers that don't support stream outputFredrik Höglund2011-12-151-1/+2
|
* llvmpipe: adapt to struct stream_output_info modificationsChristoph Bumiller2011-12-151-9/+2
| | | | My fault, I broke it with v5 of 861a029ddb31e91bb4d8e18ab708d0d172f63aad.
* nvc0: implement new stream output interfaceChristoph Bumiller2011-12-1515-189/+372
|
* d3d1x: implement new stream output interfaceChristoph Bumiller2011-12-157-50/+213
|
* st/mesa: implement EXT_transform_feedback and ARB_transform_feedback2Marek Olšák2011-12-154-0/+118
|
* u_blitter: implement copy_buffer using stream outputMarek Olšák2011-12-152-2/+96
|
* u_blitter: restore stream output targetsMarek Olšák2011-12-152-0/+36
|
* trace: implement stream output interfaceChristoph Bumiller2011-12-151-0/+73
|
* noop: implement stream outputMarek Olšák2011-12-151-0/+35
|
* gallium: utility helper functions for stream outputMarek Olšák2011-12-157-7/+66
|
* gallium: interface changes necessary to implement transform feedback (v5)Marek Olšák2011-12-1524-89/+210
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Namely: - EXT_transform_feedback - ARB_transform_feedback2 - ARB_transform_feedback_instanced The old interface was not useful for OpenGL and had to be reworked. This interface was originally designed for OpenGL, but additional changes have been made in order to make st/d3d1x support easier. The most notable change is the stream-out info must be linked with a vertex or geometry shader and cannot be set independently. This is due to limitations of existing hardware (special shader instructions must be used to write into stream-out buffers), and it's also how OpenGL works (stream outputs must be specified prior to linking shaders). Other than that, each stream output buffer has a "view" into it that internally maintains the number of bytes which have been written into it. (one buffer can be bound in several different transform feedback objects in OpenGL, so we must be able to have several views around) The set_stream_output_targets function contains a parameter saying whether new data should be appended or not. Also, the view can optionally be used to provide the vertex count for draw_vbo. Note that the count is supposed to be stored in device memory and the CPU never gets to know its value. OpenGL way | Gallium way ------------------------------------ BeginTF = set_so_targets(append_bitmask = 0) PauseTF = set_so_targets(num_targets = 0) ResumeTF = set_so_targets(append_bitmask = ~0) EndTF = set_so_targets(num_targets = 0) DrawTF = use pipe_draw_info::count_from_stream_output v2: * removed the reset_stream_output_targets function * added a parameter append_bitmask to set_stream_output_targets, each bit specifies whether new data should be appended to each buffer or not. v3: * added PIPE_CAP_STREAM_OUTPUT_PAUSE_RESUME for ARB_tfb2, note that the draw-auto subset is always required (for d3d10), only the pause/resume functionality is limited if the CAP is not advertised v4: * update gallium/docs v5: * compactified struct pipe_stream_output_info, updated dump/trace
* gallium: disable stream output in drivers that support itMarek Olšák2011-12-155-2/+23
| | | | I am going to make interface changes and I don't want to break compilation.
* st/xa: Disable composite solid fill with maskThomas Hellstrom2011-12-151-1/+19
| | | | | | | Xa doesn't support it yet. Trying to do that would cause a segfault. Signed-off-by: Thomas Hellstrom <[email protected]> Reviewed-by: Jakob Bornecrantz <[email protected]>
* st/xa: Fix format conversion copy alpha channelThomas Hellstrom2011-12-153-3/+13
| | | | | | | | | When doing format conversion copies between a format without an alpha channel and a format with an alpha channel, make sure the destination alpha is set to 1. Signed-off-by: Thomas Hellstrom <[email protected]> Reviewed-by: Jakob Bornecrantz <[email protected]>
* st/xa: Fix component alpha checkThomas Hellstrom2011-12-151-2/+1
| | | | | | | Component alpha only affects mask pictures. Signed-off-by: Thomas Hellstrom <[email protected]> Reviewed-by: Jakob Bornecrantz <[email protected]>
* st/egl: fix compiler warningsChia-I Wu2011-12-152-3/+3
| | | | | One is about casting a pointer to integer and the other is about an unused function when HAVE_WAYLAND_BACKEND is not defined.
* st/egl: Implement EGL_NOK_swap_region for x11Fredrik Höglund2011-12-153-20/+51
| | | | | | | | v2: inline x11_drawable_copy_buffers(). Signed-off-by: Fredrik Höglund <[email protected]> [olv: s/inline/INLINE/]