aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* iris: Implement the Broadwell NP Z PMA Stall FixKenneth Graunke2019-10-085-2/+209
| | | | | | | | | This should help avoid stalls in the pixel mask array in certain non-promoted depth cases. It especially helps for Z16, as each bit in the PMA corresponds to two pixels when using Z16, as opposed to the usual one pixel. Improves performance in GFXBench5 TRex by 22% (n=1).
* docs: Update recently enabled VK extensions on IntelCaio Marcelo de Oliveira Filho2019-10-081-0/+3
|
* anv: Enable VK_EXT_shader_subgroup_{ballot,vote}Caio Marcelo de Oliveira Filho2019-10-081-0/+2
| | | | | | | | | | | | | | Anvil now supports and passes Vulkan CTS tests matching dEQP-VK.subgroups.*.ext_shader_subgroup_ballot.* dEQP-VK.subgroups.*.ext_shader_subgroup_vote.* and crucible tests matching func.shader-ballot.* func.shader-subgroup-vote.* Reviewed-by: Jason Ekstrand <[email protected]>
* st/mesa: Fix inverted polygon stipple conditionKenneth Graunke2019-10-081-1/+1
| | | | | | | | Fixes Piglit's gl-2.1-polygon-stipple-fs on iris. Fixes: 63f24c3c016 ("gallium: Enable MESA_framebuffer_flip_y") Reviewed-by: Fritz Koenig <[email protected]> Reviewed-by: Kristian H. Kristensen <[email protected]>
* gallium: Enable MESA_framebuffer_flip_yFritz Koenig2019-10-084-6/+4
| | | | | Reviewed-by: Kenneth Graunke <[email protected]> Reviewed-by: Kristian H. Kristensen <[email protected]>
* mesa: Allow MESA_framebuffer_flip_y for GLES 3Fritz Koenig2019-10-088-20/+108
| | | | | | | | Implement glFramebufferParameteriMESA on GLES 3 so that the extension is not dependant on GLES 3.1 Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Kristian H. Kristensen <[email protected]>
* mesa: GetFramebufferParameteriv spellingFritz Koenig2019-10-082-5/+5
| | | | | | | GetFramebufferParameteriv was incorrectly spelled as GetFramebufferParameteri. Reviewed-by: Kristian H. Kristensen <[email protected]>
* include/GLES2: Sync GLES2 headers with KhronosFritz Koenig2019-10-082-2/+29
| | | | | | Bring in glFramebufferParameteriMESA/glGetFramebufferParameterivMESA Reviewed-by: Kristian H. Kristensen <[email protected]>
* radeonsi: enable zerovram for Rocket LeagueClément Guérin2019-10-081-0/+3
| | | | | | | | | Fixes corruption on game startup. Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/1888 Cc: 19.1 19.2 <[email protected]> Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]>
* iris: Properly unreference extra VBOs for draw parametersKenneth Graunke2019-10-081-3/+3
| | | | | | | | | bound_vertex_buffers doesn't include extra draw parameters buffers. Tracking this correctly is kind of complicated, and iris_destroy_state isn't exactly in a hot path, so just loop over all VBO bindings. Fixes: 4122665dd90 (iris: Enable ARB_shader_draw_parameters support) Reported-by: Sergii Romantsov <[email protected]>
* meson: fix sys/mkdev.h detection on SolarisEric Engestrom2019-10-081-2/+7
| | | | | | | | | | | | | On Solaris, sys/sysmacros.h has long-deprecated copies of major() & minor() but not makedev(). sys/mkdev.h has all three and is the preferred choice. Let's make sure we check for all 3 major(), minor() and makedev(). Reported-by: Alan Coopersmith <[email protected]> Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Alan Coopersmith <[email protected]> Tested-by: Alan Coopersmith <[email protected]>
* include: update drm-uapiEric Engestrom2019-10-086-83/+566
| | | | | | | | | | `drm.h` was missing a `#include <stdint.h>`, which was completely breaking the non-linux builds after 272f9cfe6a19212354c8 ("dri: Use DRM_FORMAT_* instead of defining our own copy.") started making use of it. Fixes: 272f9cfe6a19212354c8 ("dri: Use DRM_FORMAT_* instead of defining our own copy.") Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/950 Acked-by: Lionel Landwerlin <[email protected]>
* loader: Simplify handling of the radeonsi driverMichel Dänzer2019-10-082-16/+1
| | | | | | | The list of AMD/ATI devices supported by radeon/r200/r300/r600 is complete, so anything else must use radeonsi. Reviewed-by: Marek Olšák <[email protected]>
* amd/llvm: Fix warning due to asserted-only variable.Bas Nieuwenhuizen2019-10-081-1/+1
| | | | | | | | | | [212/893] Compiling C object 'src/amd/llvm/ce8261c@@amd_common_llvm@sta/ac_nir_to_llvm.c.o'. ../mesa/src/amd/llvm/ac_nir_to_llvm.c: In function ‘visit_image_atomic’: ../mesa/src/amd/llvm/ac_nir_to_llvm.c:2636:17: warning: unused variable ‘format’ [-Wunused-variable] 2636 | const GLenum format = nir_intrinsic_format(instr); | ^~~~~~ Reviewed-by: Marek Olšák <[email protected]>
* panfrost: Draw the wallpaper when only depth/stencil bufs are clearedBoris Brezillon2019-10-084-5/+15
| | | | | | | | | When only the depth/stencil bufs are cleared, we should make sure the color content is reloaded into the tile buffers if we want to preserve their content. Signed-off-by: Boris Brezillon <[email protected]> Reviewed-by: Alyssa Rosenzweig <[email protected]>
* panfrost: Make sure a clear does not re-use a pre-existing batchBoris Brezillon2019-10-085-271/+32
| | | | | | | | | | | | | | glClear()s are expected to be the first thing GL apps do before drawing new things. If there's already an existing batch targetting the same FBO that has draws attached to it, we should make sure the new clear gets a new batch assigned to guaranteed that the FB content is actually cleared with the requested color/depth/stencil values. We create a panfrost_get_fresh_batch_for_fbo() helper for that and call it from panfrost_clear(). Signed-off-by: Boris Brezillon <[email protected]> Reviewed-by: Alyssa Rosenzweig <[email protected]>
* iris: Update comment about 3-component formats and buffer texturesKenneth Graunke2019-10-071-5/+7
| | | | | You can't render to PIPE_BUFFER so there's no reason to prefer RGBX. PBO upload would like to use proper RGB textures as source data.
* iris: Allow packed RGB pbo uploadsChris Wilson2019-10-071-2/+2
| | | | | | | | Hitting any fallback path on Broxton as we require clflushing the whole buffer even for an upload of a subtexture. However, since gallium provides a pbo upload path, allow it to sample packed RGB if supported. Reviewed-by: Kenneth Graunke <[email protected]>
* anv/android: fix images created with external format supportTapani Pälli2019-10-081-0/+12
| | | | | | | | | This fixes a case where user first creates image and then later binds it with memory created from AHW buffer. Cc: <[email protected]> Signed-off-by: Tapani Pälli <[email protected]> Reviewed-by: Lionel Landwerlin <[email protected]>
* meson: Always add LLVM coroutines module.Bas Nieuwenhuizen2019-10-081-4/+1
| | | | | | | | | | | | It gets used by the gallium auxiliary draw module, which gets used pretty much always when LLVM is used as JIT. At the same time most builds don't hit the issue here because the shared library of LLVM contains all modules. Fixes: d32690b43c91 ("gallivm: add coroutine pass manager support") Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/951 Reviewed-by: Gert Wollny <[email protected]>
* amd: Move all amd/common code that depends on LLVM to amd/llvm.Timur Kristóf2019-10-0823-41/+84
| | | | | | | | | | | | | This commit is a step towards the goal of being able to build RADV without LLVM. In the future we would like to offer the option to use RADV solely with ACO. There is still a need for the common AMD code located in amd/common but the LLVM specific parts need to be separated. Signed-off-by: Timur Kristóf <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]> Acked-by: Marek Olšák <[email protected]> Acked-by: Samuel Pitoiset <[email protected]>
* nvc0: add support for GL_EXT_demote_to_helper_invocationIlia Mirkin2019-10-073-0/+14
| | | | Signed-off-by: Ilia Mirkin <[email protected]>
* gallium/tgsi: add support for DEMOTE and READ_HELPER opcodesIlia Mirkin2019-10-074-6/+30
| | | | | | | | | | This mirrors the intrinsics in the GLSL IR. One could imagine an alternate definition where reading the semantic would account for the READ_HELPER functionality, but that feels potentially dodgy and could be subject to CSE unpleasantness. Signed-off-by: Ilia Mirkin <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
* radeonsi: use simple_mtx_t instead of mtx_tMarek Olšák2019-10-079-50/+51
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* st/mesa: use simple_mtx_t instead of mtx_tMarek Olšák2019-10-074-34/+34
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* gallium: add PIPE_RESOURCE_FLAG_SINGLE_THREAD_USE to skip util_range lockMarek Olšák2019-10-0739-73/+84
| | | | | | | | | u_upload_mgr sets it, so that util_range_add can skip the lock. The time spent in tc_transfer_flush_region decreases from 0.8% to 0.2% in torcs on radeonsi. Reviewed-by: Kenneth Graunke <[email protected]>
* util: use simple_mtx_t for util_rangeMarek Olšák2019-10-071-5/+6
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* winsys/radeon: initialize SIMD properties in radeon_infoMarek Olšák2019-10-071-0/+3
| | | | | | | | | This was missed when I added them. Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/1839 Fixes: 0692ae34e93 ("ac: move ac_get_num_physical_sgprs into radeon_info") Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]>
* iris: Drop vtbl usage for some load_register callsKenneth Graunke2019-10-071-5/+4
| | | | We can just call the actual functions directly.
* iris/state: Move reg/mem load/store functions earlier in fileJordan Justen2019-10-071-124/+122
| | | | Signed-off-by: Jordan Justen <[email protected]>
* meson: drop unused inc_nirEric Engestrom2019-10-071-1/+0
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: drop duplicate inc_nir from spirv2nirEric Engestrom2019-10-071-1/+1
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: drop duplicate inc_nir from libglslEric Engestrom2019-10-071-1/+1
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: drop duplicate inc_nir from libirisEric Engestrom2019-10-071-1/+1
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: rename libnir to _libnir to make it clear it's not meant to be used ↵Eric Engestrom2019-10-071-2/+2
| | | | | | | anywhere else Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: use idep_nir instead of libnir in pipe-loaderEric Engestrom2019-10-071-2/+2
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: use idep_nir instead of libnir in haiku softpipeEric Engestrom2019-10-071-2/+2
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: use idep_nir instead of libnir in gallium nineEric Engestrom2019-10-071-2/+3
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: use idep_nir instead of libnir in libclnirEric Engestrom2019-10-071-2/+2
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: use idep_nir instead of libnir in libnouveauEric Engestrom2019-10-071-3/+4
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: add missing idep_nir_headers in iris_gen_libsEric Engestrom2019-10-071-2/+2
| | | | | | Fixes: 4929f020c37eac5b07f9 ("iris: better SBE") Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* script: drop get_reviewer.plEric Engestrom2019-10-073-2349/+2
| | | | | | | | This script doesn't make sense anymore in the age of GitLab. Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson/loader: drop unneeded *.h fileEric Engestrom2019-10-071-3/+2
| | | | | | | | | Meson automatically tracks any file included by a file it already tracks, and `pci_id_driver_map.h` & `loader.h` are included by `loader.c`, while `loader_dri3_helper.h` is included by `loader_dri3_helper.c`. Signed-off-by: Eric Engestrom <[email protected]> Acked-by: Lionel Landwerlin <[email protected]>
* loader: use ARRAY_SIZE instead of NULL sentinelEric Engestrom2019-10-072-6/+3
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Acked-by: Lionel Landwerlin <[email protected]>
* loader: s/int/bool/ for predicate resultEric Engestrom2019-10-072-5/+8
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Acked-by: Lionel Landwerlin <[email protected]>
* loader: replace int/1/0 with bool/true/falseEric Engestrom2019-10-072-10/+9
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Acked-by: Lionel Landwerlin <[email protected]>
* egl: replace MESA_EGL_NO_X11_HEADERS hack with upstream EGL_NO_X11Eric Engestrom2019-10-072-8/+16
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Daniel Stone <[email protected]>
* iris: Drop bonus parameters from iris_init_*_context()Kenneth Graunke2019-10-073-27/+10
| | | | Nothing uses vtbl or dbg, and screen is available from the batch.
* nir/constant_folding: fold load_constant intrinsicsRhys Perry2019-10-071-0/+58
| | | | | | | | | | | | | | | | | | These can appear after loop unrolling. v2: stylistic changes v2: replace state->mem_ctx with state->shader v2: add bounds checking v3: use nir_intrinsic_range() for bounds checking v3: fix issue where partially out-of-bounds reads are replaced with undefs v4: fix merge conflicts during rebase v5: split into two commits v6: set constant_data to NULL after freeing (fixes nir_sweep()/Iris) v7: don't remove the constant data if there are no constant loads Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Connor Abbott <[email protected]> (v6) Acked-by: Ian Romanick <[email protected]>
* nir/constant_folding: add back and use constant_fold_stateRhys Perry2019-10-071-22/+19
| | | | | | | Useful for load_constant folding. Signed-off-by: Rhys Perry <[email protected]> Reviewed-by: Connor Abbott <[email protected]>