summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* swr: [rasterizer core] SwrStoreTiles api changeTim Rowley2016-10-117-19/+27
| | | | | | | SwrStoreTiles now takes a mask of surfaces to store. Reduces overhead when storing multiple render targets. Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
* swr: [rasterizer scripts] add ENABLE_ASSERT_DIALOGS knob for windowsTim Rowley2016-10-111-0/+8
| | | | Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
* swr: [rasterizer archrast] add mako templateTim Rowley2016-10-114-2/+117
| | | | | | Add template for generating code to save events to a file. Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
* swr: [rasterizer core] disable cull for rect_listTim Rowley2016-10-111-0/+8
| | | | Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
* swr: [rasterizer core] add support for "RAW" surface formatTim Rowley2016-10-112-0/+29
| | | | Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
* swr: [rasterizer core] align Macrotile FIFO memory to SIMD sizeTim Rowley2016-10-114-9/+23
| | | | | | | | | Align and use streaming store instructions for BE fifo queues. Provides slightly faster enqueue and doesn't pollute the caches. Add appropriate memory fences to ensure streaming writes are globally visible. Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
* swr: [rasterizer common] remove threadviz codeTim Rowley2016-10-113-94/+0
| | | | Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
* swr: [rasterizer memory] split load/store for compile speedTim Rowley2016-10-1117-1836/+2290
| | | | Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
* egl: add eglSwapBuffersWithDamageKHREric Engestrom2016-10-111-6/+26
| | | | | | | | | | | EGL_KHR_swap_buffers_with_damage is actually already supported, as it is technically nothing but a rename of EGL_EXT_swap_buffers_with_damage. To that effect, both extension are advertised depending on the same condition, and the new entrypoint simply redirects to the previous one. Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
* intel/genxml: fix building rules for aubinator required headersMauro Rossi2016-10-112-2/+6
| | | | | | | | | | | | New generated headers were introduced by commit 63a366a "intel: aubinator: generate a standalone binary" Android does not need aubinator yet, so in order to avoid building error, aubinator required new genxml headers are defined in a separate list. If required, building rules for Android will be added later. [Emil Velikov: don't use a _HEADERS variable name (causes warnings)] Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
* radv: automake: move libamdgpu_addrlib.la to VULKAN_LIB_DEPSEmil Velikov2016-10-111-1/+2
| | | | | | | The static library is analogous to the intel ISL, which is required for both hardware and (to be added) testing library. Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
* radv: automake: remove unused variablesEmil Velikov2016-10-111-6/+0
| | | | Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
* radv: automake: include the python scripts/formats table in the tarballEmil Velikov2016-10-111-2/+5
| | | | Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
* mesa: fix error handling in _mesa_TransformFeedbackVaryingsTapani Pälli2016-10-111-10/+6
| | | | | | | | | | | | | Patch changes function to use _mesa_lookup_shader_program_err both in TransformFeedbackVaryings and GetTransformFeedbackVarying that handles errors correctly for invalid values of shader program. Fixes following dEQP test: dEQP-GLES31.functional.debug.negative_coverage.get_error.shader.transform_feedback_varyings Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98135 Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
* i965: solve cubemap negative x/y/z faces buffer offset issue in dEQP.Xu,Randy2016-10-111-1/+3
| | | | | | | | | | | | | | Add the miptree level/slice x/y_offset when count the surface offset in brw_emit_surface_state. The surface offset has two parts, one is from mt->offset, which should be 32 aligned in width/height for tiled buffer; another is from mt->level[current_level].slice[current_slice]. x/y_offset. This fix will solve 12 deqp failure dEQP-EGL.functional.image.create.gles2_cubemap_negative_*_texture Signed-off-by: Xu,Randy <randy.xu@intel.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* i915g: fix incorrect gl_FragCoord valueNicholas Bishop2016-10-101-1/+6
| | | | | | | | | | | | | | | | | | | | | | | On Intel Pineview M hardware, the i915 gallium driver doesn't output the correct gl_FragCoord. It seems to always have an X coord of 0.0 and a Y coord of the window's height in pixels, e.g. 600.0f or such. I believe this is a regression caused in part by this commit: afa035031ff9e0c07a2297d864e46c76f7bfff58 The old behavior used the output at index zero, while the new behavior uses actual zeroes. In the case of gl_FragCoord the output at index zero happened to be the correct one, so the behavior appeared correct although the code already had a bug. Fixed by checking for I915_SEMANTIC_POS when setting up texCoords. If the generic_mapping is I915_SEMANTIC_POS, look for the TGSI_SEMANTIC_POSITION instead of a TGSI_SEMANTIC_GENERIC output. https://bugs.freedesktop.org/show_bug.cgi?id=97477 Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> Tested-by: Stéphane Marchesin <marcheu@chromium.org>
* Revert "mesa_glinterop: remove inclusion of GLX header"Vinson Lee2016-10-101-4/+1
| | | | | | | | | | | | | | | | | | | This reverts commit 8472045b16b3e4621553fe451a20a9ba9f0d44b6. Conflicts: include/GL/mesa_glinterop.h This patch fixes this build error with GCC 4.4. Compiling src/glx/dri_common_interop.c ... In file included from src/glx/dri_common_interop.c:33: include/GL/mesa_glinterop.h:62: error: redefinition of typedef ‘GLXContext’ include/GL/glx.h:165: note: previous declaration of ‘GLXContext’ was here Fixes: 8472045b16b3 ("mesa_glinterop: remove inclusion of GLX header") Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96770 Signed-off-by: Vinson Lee <vlee@freedesktop.org>
* st/nine: More checks for GetRenderTargetDataAxel Davy2016-10-101-0/+2
| | | | | | | Fixes a wine test crash Signed-off-by: Axel Davy <axel.davy@ens.fr> Reviewed-by: Patrick Rudolph <siro@das-labor.org>
* st/nine: Add debug output for lost devicesPatrick Rudolph2016-10-101-0/+2
| | | | | | | Add debug output to ease debugging. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Prevent crash in GetRenderTargetDataPatrick Rudolph2016-10-101-0/+2
| | | | | | | | | | | | Return error instead of crashing on source surfaces with format D3DFMT_NULL. Fix for issue #236. Tested on Windows 7. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Set CLAMP_TO_EDGE on cubetexturesPatrick Rudolph2016-10-103-5/+22
| | | | | | | | | | | Wine tests show that cubetextures always use PIPE_TEX_WRAP_CLAMP_TO_EDGE regardless of set sampler states. Fixes failing d3d9 wine test test_cube_wrap. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: handle possible failure of D3DWindowBuffer_createPatrick Rudolph2016-10-101-0/+8
| | | | | | | Check for errors and pass them to the callers. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Assert on buffer creation failurePatrick Rudolph2016-10-101-8/+18
| | | | | | | | Add an assert to make sure buffer creation doesn't fail. Add error handling in calling functions. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Use NineDevice9_CreateDepthStencilSurface in swapchain9Patrick Rudolph2016-10-101-13/+17
| | | | | Replace custom code with NineDevice9_CreateDepthStencilSurface. All functionality is given now.
* st/nine: Fix check and remove useless code in swapchain9Axel Davy2016-10-102-17/+5
| | | | | | | | | | | | | | | | | | | | | The removed code was there for two reasons: 1) Allow DF16, DF24, INTZ to be used as depth buffer for swapchain, if the driver doesn't support PIPE_BIND_SAMPLER_VIEW for the underlying format 2) Set PIPE_BIND_SAMPLER_VIEW if possible, such that if StretchRect is called on the depth texture, it is happy. 1) The reason these formats needed a workaround is because the check flags for them in CheckDeviceFormat were incorrect, which led applications to think the formats were valid for swapchains, even if they weren't supported. 2) StretchRect limitations for depth buffers force the resource_copy_region path, which should be fine without PIPE_BIND_SAMPLER_VIEW. Thus fix the check for 1), and remove the code. Signed-off-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Implement MSAA quality levelsPatrick Rudolph2016-10-107-12/+125
| | | | | | | | | | | | | | | | Advertise quality levels: Each supported multisample count matches to one quality level. The application doesn't know how much samples each quality level has. For that reason it's not possible to set the multisample mask. Return errors on quality level missmatch. Fixes several old games not having multisample support until now. Fix for issue #73. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Signed-off-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Prepare update_framebuffer for MS quality levelsPatrick Rudolph2016-10-101-4/+4
| | | | | | | | Compare resource's nr_samples instead of D3D multisample level. Required for multisample quality levels to work correct. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Add additional error handling in CheckDeviceMultiSampleTypePatrick Rudolph2016-10-101-0/+6
| | | | | | | | | | Return one supported quality level in error cases. Return error on invalid multisample count. Fixes failing wine tests. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Fix compiler warningPatrick Rudolph2016-10-102-7/+11
| | | | | | | | | Use strict aliasing in SetPrivateData and struct pheader. Casting char[1] to IUnknown** isn't allowed in strict aliasing. Compute pointer to body by adding size of header to header pointer. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Remove resource9 {Set/Get/Free}PrivateData functionsPatrick Rudolph2016-10-102-134/+1
| | | | | | | | Remove {Set/Get/Free}PrivateData in resource9. Functionality has been implement in IUnknown interface. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Remove volume9 {Set/Get/Free}PrivateData functionsPatrick Rudolph2016-10-103-159/+0
| | | | | | | | Remove {Set/Get/Free}PrivateData in volume9. Functionality has been implement in IUnknown interface. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Switch {Set/Get/Free}PrivateData functionsPatrick Rudolph2016-10-108-61/+61
| | | | | | | Switch {Set/Get/Free}PrivateData function to introduced IUnknown functions. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Implement {Set/Get/Free}PrivateData in iunknownPatrick Rudolph2016-10-102-0/+134
| | | | | | | | Implement {Set/Get/Free}PrivateData in iunknown to get rid of duplicated code in resource9 and volume9. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Return device in NineSurface9_GetContainerPatrick Rudolph2016-10-101-2/+10
| | | | | | | | | | | | | According to MSDN the device is returned for surfaces that do not have a regular container. Such surfaces are: OffscreenPlainSurface, DepthStencilSurface and RenderTarget Tested and verified on Windows. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Allocate surface resources in surface ctorPatrick Rudolph2016-10-102-68/+44
| | | | | | | | | | Allocate resources in surface ctor. Allows to use statetracker internal memory accounting. Fix for issue #231. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Signed-off-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Fix D3DFMT_NULL sizeAxel Davy2016-10-101-0/+2
| | | | | | | | | D3DFMT_NULL is mapped to PIPE_FORMAT_NONE. Instead of relying on PIPE_FORMAT_NONE to return a size, pick one. The one picked is the same than Wine. Signed-off-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Add debugging outputPatrick Rudolph2016-10-101-0/+4
| | | | | | | | Add DBG calls to NineTexture9_GetLevelDesc and NineTexture9_GetSurfaceLevel to ease debugging. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Fix assert in NineUnknown_QueryInterfacePatrick Rudolph2016-10-101-1/+4
| | | | | | | | | Tests showed that is allowed to call this method on object that have a zero refcount. Required for issue #230. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Print interface id in NineVolume9_GetContainerPatrick Rudolph2016-10-101-0/+5
| | | | | | | To ease debugging print interface id. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Print interface id in NineSurface9_GetContainerPatrick Rudolph2016-10-101-0/+5
| | | | | | | To ease debugging print interface id. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Print interface id in NineUnknown_QueryInterfacePatrick Rudolph2016-10-101-1/+3
| | | | | | | To ease debugging print interface id. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Move assert in NineSurface9_ctorPatrick Rudolph2016-10-101-2/+2
| | | | | | | Move assert to function entry. Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Properly declare sampler states for ffAxel Davy2016-10-101-1/+6
| | | | | | | Fixes a softpipe assertion failure with wine tests Signed-off-by: Axel Davy <axel.davy@ens.fr> Reviewed-by: Patrick Rudolph <siro@das-labor.org>
* st/nine: Handle user clipping planes properly for ffAxel Davy2016-10-101-4/+17
| | | | | | Found reading msdn and checking Wine. Signed-off-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Fix the calculation of the number of vs inputsAxel Davy2016-10-101-1/+1
| | | | | | | | Fixes hangs on radeonsi, and assert on llvmpipe. Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "12.0" <mesa-stable@lists.freedesktop.org>
* st/nine: Fix specular w coordinateAxel Davy2016-10-101-4/+2
| | | | | | | Found looking at Wine formulas. Fixes a few visual issues. Signed-off-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Disable parts of lighting calculation if no normal providedAxel Davy2016-10-101-26/+35
| | | | | | Behaviour found in Wine sources, and checked with some test apps. Signed-off-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Fix condition for specular lightningAxel Davy2016-10-101-12/+11
| | | | Signed-off-by: Axel Davy <axel.davy@ens.fr>
* st/nine: Do always accumulate diffuseAxel Davy2016-10-101-3/+2
| | | | | | | According to spec. Signed-off-by: Axel Davy <axel.davy@ens.fr> Reviewed-by: Patrick Rudolph <siro@das-labor.org>
* st/nine: Initialize ps ff registersAxel Davy2016-10-101-0/+5
| | | | | | | Found with wine tests for the rTmp register. Not sure for the other ones. Signed-off-by: Axel Davy <axel.davy@ens.fr>