summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* mesa: add API/extension checks for 3-component texture buffer formatsBrian Paul2013-12-181-7/+14
| | | | | | | | | | The GL_RGB32F, GL_RGB32UI and GL_RGB32I texture buffer formats are only supposed to be allowed if the GL_ARB_texture_buffer_object_rgb32 extension is supported. Note that the texture buffer extensions require a core profile. This patch adds those checks. Fixes the soon-to-be-added arb_clear_buffer_object-negative-bad-internalformat piglit test.
* mesa: 78-column wrapping in extensions.cBrian Paul2013-12-181-6/+8
|
* mesa: Cleanup mesa/main/bufferobj.hPi Tabred2013-12-181-14/+45
| | | | | | Column wrapping and space between lines. Reviewed-by: Brian Paul <[email protected]>
* Add ARB_clear_buffer_object to list of supported extensionsPi Tabred2013-12-181-0/+1
| | | | Reviewed-by: Brian Paul <[email protected]>
* st/mesa: plug in default buffer object driver functionsBrian Paul2013-12-181-0/+3
| | | | | In particular, this plugs in the new ClearBufferSubData() fallback driver function.
* mesa: Implement functions for clear_buffer_object extensionsPi Tabred2013-12-182-0/+283
| | | | Reviewed-by: Brian Paul <[email protected]>
* mesa: Modify get_buffer() to allow for a variable error codePi Tabred2013-12-181-16/+28
| | | | Reviewed-by: Brian Paul <[email protected]>
* mesa: Add bufferobj_range_mapped functionPi Tabred2013-12-181-32/+59
| | | | | | | | | | | Add function to test if the buffer is already mapped and if so, if the mapped range overlaps the given range. Modify the _mesa_InvalidateBufferSubData function to use the new function. Enable buffer_object_subdata_range_good() to use bufferobj_range_mapped Reviewed-by: Brian Paul <[email protected]>
* mesa: get_texbuffer_format(): differentiate between core and compat contextPi Tabred2013-12-181-80/+87
| | | | | | | | alpha, lumincance and intensity formats are illegal in a core context. Add a check to return MESA_FORMAT_NONE if one of those is requested within a core context. Reviewed-by: Brian Paul <[email protected]>
* mesa: Modify format validation to check for extension not context versionPi Tabred2013-12-181-7/+2
| | | | Reviewed-by: Brian Paul <[email protected]>
* mesa: Make validate_texbuffer_format function available externallyPi Tabred2013-12-182-3/+8
| | | | | | | - change storage class from static to extern - rename validate_texbuffer_format to _mesa_validate_texbuffer_format Reviewed-by: Brian Paul <[email protected]>
* mesa: Add infrastructure for GL_ARB_clear_buffer_objectPi Tabred2013-12-184-3/+63
| | | | | | | | | - add xml file for extension - add reference in gl_API.xml - add pointer to device driver function table (dd.h) - update dispatch_sanity.cpp Reviewed-by: Brian Paul <[email protected]>
* clover: Append buffers that use CL_MEM_USE_HOST_PTR.Jan Vesely2013-12-181-1/+1
| | | | | | | | | Specs say it's legal for implementations to use internal copies, and the write synchronization seems to work. Fixes clCreateBuffer (together with previous patches) and buffer-flags piglits. Signed-off-by: Jan Vesely <[email protected]> Acked-by: Francisco Jerez <[email protected]>
* clover: Add parameter checks to clCreateBuffer.Jan Vesely2013-12-181-1/+13
| | | | | | | | | v2: Use fewer if statements and functional tricks instead of single-use method, suggested by Francisco Jerez. Squash two small patches into one. Signed-off-by: Jan Vesely <[email protected]> Reviewed-by: Francisco Jerez <[email protected]>
* st/dri: Check for kernel support before enabling fd sharing v2Thomas Hellstrom2013-12-182-8/+11
| | | | | | | | | | | | | The dri2 state tracker is checking for driver support before enabling dri2ImageExtension version 7. This commit adds a check that also the kernel driver supports fd sharing through prime. Note that this adds a libdrm dependency on dri2.c. v2: Removed unnecessary clamping of bool expression Signed-off-by: Thomas Hellstrom <[email protected]> Reviewed-by: Christopher James Halse Rogers <[email protected]>
* radeonsi: set CB_DISABLE if the color mask is 0Marek Olšák2013-12-181-3/+8
| | | | | | Also needed for the DB in-place decompression according to hw docs. Reviewed-by: Alex Deucher <[email protected]>
* radeonsi: add the htile buffer to the CS ioctl buffer listMarek Olšák2013-12-181-0/+2
| | | | | | This may fix the GPU crashes. Reviewed-by: Alex Deucher <[email protected]>
* glsl: Replace _mesa_glsl_parser_targets enum with gl_shader_type.Paul Berry2013-12-176-81/+75
| | | | | | These enums were redundant. Reviewed-by: Brian Paul <[email protected]>
* main: Move MESA_SHADER_TYPES outside of gl_shader_type enum.Paul Berry2013-12-171-1/+2
| | | | | | This will avoid spurious compiler warnings in the patch that follows. Reviewed-by: Brian Paul <[email protected]>
* glsl: Don't return bad values from _mesa_shader_type_to_index.Paul Berry2013-12-172-2/+2
| | | | | | | | | | This will avoid compiler warnings in the patch that follows. There should be no user-visible effect because the change only affects the behaviour when an invalid enum is passed to _mesa_shader_type_to_index(), and that can only happen if there is a bug elsewhere in Mesa. Reviewed-by: Brian Paul <[email protected]>
* swrast: silence driContextSetFlags() parameter type warningBrian Paul2013-12-171-1/+1
|
* st/dri: fix compiler warning for driCopySubBufferExtensionBrian Paul2013-12-171-1/+1
|
* radeonsi: improve HiZ precision for less and lequal depth functionsMarek Olšák2013-12-171-1/+7
| | | | | | r600g needs this too. Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: make DB_RENDER_OVERRIDE an invariant registerMarek Olšák2013-12-173-50/+3
| | | | | | | All this cruft was ported from r600g and isn't needed on SI and later according to hw docs. If we implemented HiS, we would set it to 0. Reviewed-by: Michel Dänzer <[email protected]>
* radeonsi: flush HTILE when appropriateMarek Olšák2013-12-173-2/+8
| | | | Reviewed-by: Michel Dänzer <[email protected]>
* st/xa: Add new map flagsThomas Hellstrom2013-12-172-9/+21
| | | | | | | | Replicate some of the gallium pipe transfer functionality. Also bump minor to signal availability of this feature. Signed-off-by: Thomas Hellstrom <[email protected]> Reviewed-by: Jakob Bornecrantz <[email protected]>
* freedreno: dummy-draw workaround for a320Rob Clark2013-12-142-1/+17
| | | | | | Fixes gpu lockups in supertuxkart. Signed-off-by: Rob Clark <[email protected]>
* r600g: expose 32-bit integer vertex formatsMarek Olšák2013-12-141-0/+1
| | | | This advertises GL_ARB_texture_buffer_object_rgb32.
* radeonsi: move invariant regs to si_init_configMarek Olšák2013-12-142-31/+26
| | | | Reviewed-by: Michel Dänzer <[email protected]>
* r600g: use shader-based MSAA resolving when hw-based one cannot be usedMarek Olšák2013-12-141-82/+35
| | | | This fixes some MSAA integer tests.
* radeonsi: use shader-based MSAA resolving when hw-based one cannot be usedMarek Olšák2013-12-141-83/+35
| | | | | | | | | | | | This fixes MSAA resolving for 32-bit integer colorbuffers, which isn't implemented by the hardware. It also fixes VM protection faults when resolving MSAA 2D array textures. This may be a CB bug, because shader-based resolving works fine. It may also be faster for upside-down and scaled blits. Reviewed-by: Michel Dänzer <[email protected]>
* gallium/u_blitter: implement shader-based MSAA resolve with bilinear filteringMarek Olšák2013-12-143-31/+149
| | | | | | | | | For scaled resolve. The filter is only good for magnification. If somebody has an idea how to implement a good filter for minification, I'm all ears. I'd have to use derivatives probably. Reviewed-by: Brian Paul <[email protected]>
* gallium/u_blitter: implement shader-based MSAA resolveMarek Olšák2013-12-143-23/+158
| | | | | | | | | We need this for integer formats and upside-down blits, which Radeons don't support for MSAA resolving. It can be used by calling util_blitter_blit. Reviewed-by: Brian Paul <[email protected]>
* gallium/u_blitter: remove useless parameters from some functionsMarek Olšák2013-12-148-42/+23
| | | | Reviewed-by: Brian Paul <[email protected]>
* st/dri: resolve sRGB buffers in linear colorspaceMarek Olšák2013-12-141-2/+23
| | | | Reviewed-by: Brian Paul <[email protected]>
* gallivm: fix pointer type for stmxcsr/ldmxcsrRoland Scheidegger2013-12-141-2/+7
| | | | | | | | The argument is a i8 pointer not a i32 pointer (even though the value actually stored/loaded IS i32). Older llvm versions didn't care but 3.2 and newer do leading to crashes. Reviewed-by: Zack Rusin <[email protected]>
* llvmpipe: get rid of barycentric calculation of a0Roland Scheidegger2013-12-141-66/+4
| | | | | | | Didn't really work as well as hoped (in particular it was not generally more accurate), will solve this differently. Reviewed-by: Jose Fonseca <[email protected]>
* llvmpipe: (trivial) get rid of triangle subdivision codeRoland Scheidegger2013-12-143-182/+1
| | | | | | | | This code was always problematic, and with 64bit rasterization we no longer need it at all. Reviewed-by: Zack Rusin <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* i965: Treat Haswell as 75 in the surface format table.Kenneth Graunke2013-12-131-1/+1
| | | | | | | Much like we do for G45. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* mesa: fix texture view use of _mesa_get_tex_image()Chris Forbes2013-12-141-2/+7
| | | | | | | | | | | | | | The target parameter to _mesa_get_tex_image() is a target enum, not an index. When we're setting up faces for a cubemap, it should be CUBE_MAP_POSITIVE_X .. CUBE_MAP_NEGATIVE_Z; for all other targets it should be the same as the texobj's target. Fixes broken cubemaps [had only +X face but claimed to have all] produced by glTextureView, which then caused various crashes in the driver when we tried to use them. Signed-off-by: Chris Forbes <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* i965/fs: add support for gl_SampleMaskIn[]Chris Forbes2013-12-145-1/+30
| | | | | | | | v2: - add assert so we don't run into trouble on Gen6. - adjust for Tapani's rearrangement of ir_variable Signed-off-by: Chris Forbes <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* glsl: add gl_SampleMaskIn[] builtinChris Forbes2013-12-141-0/+4
| | | | | Signed-off-by: Chris Forbes <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: add SYSTEM_VALUE_SAMPLE_MASK_INChris Forbes2013-12-141-6/+8
| | | | | Signed-off-by: Chris Forbes <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* mesa: document _mesa_texstore() return valueBrian Paul2013-12-131-0/+1
|
* st/mesa: only set up sampler compare mode for depth texturesBrian Paul2013-12-131-9/+12
| | | | | | | | | | | The GL_ARB_shadow spec says the shadow compare mode should have no effect when sampling a color texture. As it was, it was up to drivers to check for that (softpipe, llvmpipe, svga and probably the rest don't do that). Note: it looks like DX10 allows shadow compare with some non-depth formats, so this case really should be handled in the state tracker. Reviewed-by: Roland Scheidegger <[email protected]>
* st/mesa: add const qualifiers in sampler validation codeBrian Paul2013-12-132-3/+9
| | | | Reviewed-by: Roland Scheidegger <[email protected]>
* st/mesa: add const qualifier to st_translate_color()Brian Paul2013-12-132-4/+4
| | | | Reviewed-by: Roland Scheidegger <[email protected]>
* st/mesa: simplify integer texture checkBrian Paul2013-12-131-5/+2
| | | | | | | Just use the gl_texture_object::_IsInteger field instead of computing it from scratch. Reviewed-by: Roland Scheidegger <[email protected]>
* svga: don't emit extraneous fs shadow codeBrian Paul2013-12-131-3/+38
| | | | | | | | | | | | Depending on the depth texture format, we may or may not have to emit explicit fs code to do the shadow comparison. Before, we were emitting it more often than needed. v2: check the actual texture format rather than the screen->depth.z16 field. The screen->depth.z16, x8z24, s8z24 fields may not all be set to a consistent set of depth formats. Reviewed-by: José Fonseca <[email protected]>
* mesa: s/uint/GLuint/ to fix MSVC errorBrian Paul2013-12-131-1/+1
|