aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* mesa: Add function to calculate an orthographic projectionIan Romanick2020-05-142-10/+38
| | | | | | | | | | | | | Unlike the existing _math_matrix_ortho, the new _math_float_ortho function just stores the calculated matrix in an array of floats. It does not multiply the new matrix with data already stored. text data bss dec hex filename 12243486 1344936 1290748 14879170 e309c2 before/lib64/dri/i965_dri.so 12243510 1344936 1290748 14879194 e309da after/lib64/dri/i965_dri.so Reviewed-by: Jason Ekstrand <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/856>
* mesa: Add matrix utility functions to load matricesIan Romanick2020-05-142-15/+31
| | | | | | | | | | | | These are basically DSA versions of glLoadIdentity() and glLoadMatrix() that are available for internal Mesa use. text data bss dec hex filename 12243574 1344936 1290748 14879258 e30a1a before/lib64/dri/i965_dri.so 12243486 1344936 1290748 14879170 e309c2 after/lib64/dri/i965_dri.so Reviewed-by: Jason Ekstrand <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/856>
* meta: Remove support for clearing integer buffersIan Romanick2020-05-142-54/+2
| | | | | | | | | | | | | | | | Since i965 no longer uses this function for clearing color buffers, there is no driver left that will ever support integer textures and use _mesa_meta_glsl_Clear. As a side note, the has_integer_textures check was rubbish anyway because meta always smashes the API to API_OPENGL_COMPAT. text data bss dec hex filename 12244406 1344936 1290748 14880090 e30d5a before/lib64/dri/i965_dri.so 12243574 1344936 1290748 14879258 e30a1a after/lib64/dri/i965_dri.so Reviewed-by: Jason Ekstrand <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/856>
* meta: Make _mesa_meta_setup_sampler staticIan Romanick2020-05-142-11/+8
| | | | | | | | | | | | | | text data bss dec hex filename 12244854 1344936 1290748 14880538 e30f1a before/lib64/dri/i965_dri.so 12244406 1344936 1290748 14880090 e30d5a after/lib64/dri/i965_dri.so v2: Put static on the function definition too. Suggested by Paulo. v3: Reformat prototype. Suggested by Jason. Reviewed-by: Paulo Zanoni <[email protected]> [v2] Reviewed-by: Jason Ekstrand <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/856>
* meta: Make _mesa_meta_texture_object_from_renderbuffer staticIan Romanick2020-05-142-8/+7
| | | | | | | | | | | | | | text data bss dec hex filename 12244974 1344936 1290748 14880658 e30f92 before/lib64/dri/i965_dri.so 12244854 1344936 1290748 14880538 e30f1a after/lib64/dri/i965_dri.so v2: Put static on the function definition too. Suggested by Paulo. v3: Reformat prototype. Suggested by Jason. Reviewed-by: Paulo Zanoni <[email protected]> [v2] Reviewed-by: Jason Ekstrand <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/856>
* i965: Assert that blorp always handles color blitsIan Romanick2020-05-142-0/+5
| | | | | | Reviewed-by: Paulo Zanoni <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/856>
* nir/validate: validate the stride for deref_ptr_as_arrayKarol Herbst2020-05-141-0/+1
| | | | | | Signed-off-by: Karol Herbst <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4068>
* nir/deref: copy ptr_stride when rematerializingKarol Herbst2020-05-141-1/+4
| | | | | | Signed-off-by: Karol Herbst <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4068>
* targets/opencl: fix build against LLVM>=10 with Polly supportJan Palus2020-05-141-0/+8
| | | | | | see https://bugs.llvm.org/show_bug.cgi?id=44870 Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4511>
* freedreno: Avoid duplicate BO relocs in FD_RINGBUFFER_OBJECTs.Eric Anholt2020-05-141-3/+17
| | | | | | | | | | | For the piglit drawoverhead case, 5/18 of the objects' relocs were duplicated. We can dedupe them at object create time (since objects are long-lived) and avoid repeated relocation work at emit time. nohw drawoverhead program statechange throughput 2.34082% +/- 0.645832% (n=10). Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5020>
* freedreno: Fix resource layout dump loop.Eric Anholt2020-05-141-1/+1
| | | | | | | Apparently I've never dumped a fully populated slices array, so the 0-init always terminated the loop. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5020>
* zink: disable vkCmdResolveImage when respecting render-conditionErik Faye-Lund2020-05-141-1/+2
| | | | | | | | vkCmdResolveImage doesn't respect render-condition, so let's fall back to blitter in this case instead. Fixes: 80d7cc6f129 ("zink: enable conditional rendering if available") Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5008>
* anv: Fix deadlock in anv_timelines_waitDanylo Piliaiev2020-05-141-1/+2
| | | | | | | | Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2945 Fixes: 34f32a6d6648073e2fda3fb78377124fb32bb288 Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5005>
* gitlab-ci: Install g++-mingw-w64-x86-64-win32 instead of mingw-w64Michel Dänzer2020-05-141-5/+2
| | | | | | | | | | mingw-w64 pulls in a lot more packages we don't need. g++-mingw-w64-x86-64-win32 is only available in Debian testing, so get all mingw packages from there. Acked-by: Andres Gomez <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4851>
* gitlab-ci: Move lib{drm,pciaccess}-dev cross packages out of loopMichel Dänzer2020-05-141-7/+2
| | | | | | | | Simpler like this, since they're only needed for one cross architecture each. Acked-by: Andres Gomez <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4851>
* gitlab-ci: Install WINE from Debian testingMichel Dänzer2020-05-145-43/+40
| | | | | | | | | | | Instead of a third-party repository which has proved unreliable at times. This pulls in glibc 2.30 from testing in the x86_build image, so we need to update the x86_test-{gl,vk} images to match. Acked-by: Andres Gomez <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4851>
* gitlab-ci: Add Debian testing repository for x86_build imageMichel Dänzer2020-05-142-5/+19
| | | | | | | | | | We don't want LLVM 8 packages to be pulled in from testing though (it would make installing llvm-8-dev for cross architectures a lot more complicated), so explicitly select buster-backports for them (they were already implicitly installed from there before, since they're not available in buster proper). Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4851>
* gitlab-ci: Move down container_pre_build.sh invocation in x86_build.shMichel Dänzer2020-05-141-2/+4
| | | | | | | It was in the middle of package installations. Acked-by: Andres Gomez <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4851>
* gitlab-ci: Update to current templatesMichel Dänzer2020-05-141-1/+1
| | | | | | | | | | | | Notable changes: * No longer generate a separate *-built-by-job-* image tag, instead store the pipeline/job information as labels in the image. * Clean up some package information files which were accidentally left before, possibly resulting in slightly smaller images. Acked-by: Andres Gomez <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4851>
* zink. Changed sampler default name.Duncan Hopkins2020-05-141-1/+3
| | | | | | | | Changed the sampler variable name from 'sampler' to 'sampler_<num>' to stop symbol classes in the Metal MSL shaders, as 'sampler' is a keyword. Improves human readability when debugging issues. Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4211>
* radv: enable shaderResourceMinLodSamuel Pitoiset2020-05-142-0/+2
| | | | | | | | This feature was missing for unknown reasons. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4989>
* ac/llvm: add support for texturing with clamped LODSamuel Pitoiset2020-05-143-1/+12
| | | | | | | | | | | | This is a requirement for the shaderResourceMinLod feature which allows to clamp LOD. This uses all image_sample_*_cl variants. All dEQP-VK.glsl.texture_functions.texture*clamp.* pass. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Reviewed-by: Marek Olšák <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4989>
* aco: add support for texturing with clamped LODSamuel Pitoiset2020-05-141-3/+39
| | | | | | | | | | | This is a requirement for the shaderResourceMinLod feature which allows to clamp LOD. This uses all image_sample_*_cl variants. All dEQP-VK.glsl.texture_functions.texture*clamp.* pass. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4989>
* aco: remove useless check for nir_tex_src_biasSamuel Pitoiset2020-05-141-4/+2
| | | | | | | | I think only nir_texop_txb can have a bias operand anyways. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Daniel Schürmann <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4989>
* CI: Windows: Build LLVM and llvmpipeDaniel Stone2020-05-143-5/+33
| | | | | | | | | | | | | | We will eventually need to build our own LLVM on Windows in order to build libclc and other bits which are required for the d3d12 build, as well as to be able to test SPIR-V/OpenCL on llvmpipe. Start doing this now, building into the base container, and exercise this by building llvmpipe under Windows. Signed-off-by: Daniel Stone <[email protected]> Reviewed-by: Jose Fonseca <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4946>
* llvmpipe: Expect increased exp precision on WindowsDaniel Stone2020-05-141-2/+4
| | | | | | | | | | | | | | 'Newer' versions of MSVCRT than 2013 appear to have fixed the bug around expf precision which caused bb9e8c5090f0. It's not clear when this was changed, but at least on Windows 10 machines with Visual Studio 2019, expf behaves in line with other implementations. As there is no clear way to test for the version of the VCRT in use, simply mark this test as expected-pass rather than xfail. Signed-off-by: Daniel Stone <[email protected]> Reviewed-by: Jose Fonseca <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4946>
* freedreno/ir3: use lower_wrmasks passRob Clark2020-05-134-35/+33
| | | | | | Signed-off-by: Rob Clark <[email protected]> Reviewed-by: Kristian H. Kristensen <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* nir: add pass to lower disjoint wrmask'sRob Clark2020-05-134-0/+236
| | | | | | Signed-off-by: Rob Clark <[email protected]> Reviewed-by: Kristian H. Kristensen <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* nir: add helper to copy const_index[]Rob Clark2020-05-132-2/+28
| | | | | | | | | It seems less brittle to not assume they are in the same order for src and dst instructions. Signed-off-by: Rob Clark <[email protected]> Reviewed-by: Kristian H. Kristensen <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* nir: fix indices for ir3 ssbo_atomic intrinsicsRob Clark2020-05-131-10/+10
| | | | | | | | | Caught by the sanity checking in nir_intrinsic_copy_const_indices() (which is introduced by the next patch). Signed-off-by: Rob Clark <[email protected]> Reviewed-by: Kristian H. Kristensen <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* freedreno/ir3: use const_index accessorsRob Clark2020-05-132-2/+2
| | | | | | | | Cleans up a couple spots that were still open-coding this. Signed-off-by: Rob Clark <[email protected]> Reviewed-by: Kristian H. Kristensen <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* freedreno/ir3: Drop wrmask for ir3 local and global store intrinsicsKristian H. Kristensen2020-05-133-45/+35
| | | | | | | These intrinsics are supposed to map to the underlying hardware instructions, which don't have wrmask. We use them when we lower store_output in the geometry pipeline and since store_output gets lowered to temps, we always see full wrmasks there.
* nir: Add some docs to the metadata typesJason Ekstrand2020-05-141-0/+51
| | | | | | Reviewed-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5028>
* freedreno: Fix attempts to push UBO contents past the constlen on pre-a6xx.Eric Anholt2020-05-143-7/+6
| | | | | | | | The binning variant likely won't have any UBO load code in it, so we were writing past constlen (and sometimes asserting about it) when loading more than one ubo block. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5027>
* docs: update calendar for 20.1.0-rc3Eric Engestrom2020-05-141-7/+1
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5026>
* panfrost: Fix background showing when using discardIcecream952020-05-141-1/+7
| | | | | | | | | | | | This fixes problems in a number of games, including SuperTuxKart, OpenMW and RVGL. v2: Use MALI_READS_ZS | 0x20 instead of MALI_WRITES_Z to match with the blob. Keep using 0x400 | 0x20 when depth is disabled. Closes: #2620 Reviewed-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5001>
* anv: Translate relative timeout to absolute when calling anv_timelines_waitDanylo Piliaiev2020-05-141-1/+1
| | | | | | | Fixes: 34f32a6d6648073e2fda3fb78377124fb32bb288 Signed-off-by: Danylo Piliaiev <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5025>
* anv: Set MOCS in 3DSTATE_CONSTANT_* on Gen9+Jason Ekstrand2020-05-141-1/+15
| | | | | | | | While we're here, we add a nice detailed comment about why always assuming internal is ok. Reviewed-by: Kenneth Graunke <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5022>
* anv: Set 3DSTATE_VF_INSTANCING on the SVGS elementJason Ekstrand2020-05-141-0/+6
| | | | | | | | It probably doesn't matter because that buffer should have a stride of zero. However, it still seems like a good idea just to be safe. Reviewed-by: Kenneth Graunke <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5022>
* freedreno: Drop the noubo fails list for CI, since there aren't any now.Eric Anholt2020-05-142-3/+1
| | | | | | The remaining two fails in the list are the same as for the normal CI run. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858>
* freedreno/a6xx: Use LDC for UBO loads.Eric Anholt2020-05-146-54/+65
| | | | | | | | | | | | It saves addressing math, but may cause multiple loads to be done and bcseled due to NIR not giving us good address alignment information currently. I don't have any workloads I know of using non-const-uploaded UBOs, so I don't have perf numbers for it This makes us match the GLES blob's behavior, and turnip (other than being bindful). Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858>
* freedreno: Trim num_ubos to just the ones we haven't lowered to constbuf.Eric Anholt2020-05-142-22/+29
| | | | | | | | | With the upcoming LDC usage in the GL driver, we don't want to be uploading descriptors for every UBO when they aren't actually in use. Trimming NIR's num_ubos will avoid that, and cleans up num_ubo handling elsewhere right now. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858>
* freedreno/ir3: Move i/o offset lowering after analyze_ubo_ranges.Eric Anholt2020-05-142-14/+12
| | | | | | | | I found that when moving more UBOs to load_ubo_ir3, analyze_ubo_ranges would move things back in a broken way. We can just run this pass later and drop the _ir3 path. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858>
* freedreno/ir3: Leave the cursor alone during ir3_nir_try_propagate_bit_shift.Eric Anholt2020-05-141-4/+2
| | | | | | | Otherwise, we might end up inserting the nir_intrinsic_load_ubo_ir3() after the non-offset src's definition, leading to nir_validate() failures. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858>
* freedreno/ir3: Clean up a silly nir_src_for_ssa(src.ssa).Eric Anholt2020-05-141-1/+1
| | | | | | Just copy the src through. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858>
* nir: Include num_ubos in the printed shader (if nonzero).Eric Anholt2020-05-141-0/+2
| | | | | | I keep wanting this number for debugging shaders. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4858>
* util/ra: Add [de]serialization supportJason Ekstrand2020-05-132-0/+69
| | | | | | Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5019>
* util/vma: Add a debug print helperJason Ekstrand2020-05-132-0/+24
| | | | | | Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5019>
* util/vma: Add an option to configure high/low preferenceJason Ekstrand2020-05-132-19/+54
| | | | | | | | | | | | The vma_heap allocator was originally designed to prefer high addresses in order to find bugs in ANV's high address handling. However, there are cases where you might want the allocator to prefer lower addresses for some reason. This provides a configure bit for exactly this purpose. Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5019>
* util/list: Add list_foreach_entry_from_safeCaio Marcelo de Oliveira Filho2020-05-131-0/+7
| | | | | | | Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Alyssa Rosenzweig <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5019>